Skip to content

Commit faceca6

Browse files
committed
typ: add annotations for fmpz_mod_poly
1 parent f07217f commit faceca6

File tree

3 files changed

+205
-49
lines changed

3 files changed

+205
-49
lines changed

src/flint/test/test_all.py

Lines changed: 45 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1962,8 +1962,8 @@ def test_fmpz_mod_poly():
19621962
assert f.is_irreducible()
19631963
assert f.is_monic()
19641964
assert raises(lambda: R1.random_element(degree=-123), ValueError)
1965-
assert raises(lambda: R1.random_element(monic="A"), ValueError)
1966-
assert raises(lambda: R1.random_element(irreducible="A"), ValueError)
1965+
assert raises(lambda: R1.random_element(monic="A"), TypeError) # type: ignore
1966+
assert raises(lambda: R1.random_element(irreducible="A"), TypeError) # type: ignore
19671967

19681968
# Conversion tests
19691969
F = fmpz_mod_ctx(11)
@@ -1975,8 +1975,9 @@ def test_fmpz_mod_poly():
19751975
assert raises(lambda: R(R_other([1,2,3])), ValueError) # moduli must match
19761976
assert raises(lambda: R(F_other(2)), ValueError) # moduli must match
19771977
assert raises(lambda: R([F(1), F_other(2)]), ValueError) # moduli must match
1978-
assert raises(lambda: R([F(1), "A"]), TypeError) # need to be able to cast to fmpz_mod
1978+
assert raises(lambda: R([F(1), "A"]), TypeError) # type: ignore
19791979

1980+
R.__call__
19801981
f1 = R([-1, -2, -3])
19811982
f2 = R([fmpz(-1),fmpz(-2),fmpz(-3)])
19821983
f3 = R([F(-1),F(-2),F(-3)])
@@ -2018,7 +2019,7 @@ def test_fmpz_mod_poly():
20182019

20192020
assert f[-1] == 0
20202021
assert raises(lambda: f.__setitem__(-1, 1), ValueError)
2021-
assert raises(lambda: f.__setitem__(1, "A"), TypeError)
2022+
assert raises(lambda: f.__setitem__(1, "A"), TypeError) # type: ignore
20222023

20232024
# Comparisons
20242025
f1 = R([1,2,3])
@@ -2031,10 +2032,10 @@ def test_fmpz_mod_poly():
20312032
assert (f1 != "1") is True
20322033
assert (f4 == 3) is True
20332034
assert (hash(f1) == hash(f2)) is True
2034-
assert raises(lambda: f1 > f2, TypeError)
2035-
assert raises(lambda: f1 >= f2, TypeError)
2036-
assert raises(lambda: f1 < f2, TypeError)
2037-
assert raises(lambda: f1 <= f2, TypeError)
2035+
assert raises(lambda: f1 > f2, TypeError) # type: ignore
2036+
assert raises(lambda: f1 >= f2, TypeError) # type: ignore
2037+
assert raises(lambda: f1 < f2, TypeError) # type: ignore
2038+
assert raises(lambda: f1 <= f2, TypeError) # type: ignore
20382039

20392040
assert len(f1) == f1.length() == 3
20402041
assert f1.degree() == 2
@@ -2076,8 +2077,8 @@ def test_fmpz_mod_poly():
20762077

20772078
# add
20782079
assert raises(lambda: f + f_cmp, ValueError)
2079-
assert raises(lambda: f + "AAA", TypeError)
2080-
assert raises(lambda: "AAA" + f, TypeError)
2080+
assert raises(lambda: f + "AAA", TypeError) # type: ignore
2081+
assert raises(lambda: "AAA" + f, TypeError) # type: ignore
20812082
assert f + g == R_test([-4,-6])
20822083
assert f + 1 == R_test([0,-2])
20832084
assert f + fmpz(1) == R_test([0,-2])
@@ -2088,8 +2089,8 @@ def test_fmpz_mod_poly():
20882089

20892090
# sub
20902091
assert raises(lambda: f - f_cmp, ValueError)
2091-
assert raises(lambda: f - "AAA", TypeError)
2092-
assert raises(lambda: "AAA" - f, TypeError)
2092+
assert raises(lambda: f - "AAA", TypeError) # type: ignore
2093+
assert raises(lambda: "AAA" - f, TypeError) # type: ignore
20932094
assert f - g == R_test([2, 2])
20942095
assert f - 1 == R_test([-2,-2])
20952096
assert f - fmpz(1) == R_test([-2,-2])
@@ -2100,8 +2101,8 @@ def test_fmpz_mod_poly():
21002101

21012102
# mul
21022103
assert raises(lambda: f * f_cmp, ValueError)
2103-
assert raises(lambda: f * "AAA", TypeError)
2104-
assert raises(lambda: "AAA" * f, TypeError)
2104+
assert raises(lambda: f * "AAA", TypeError) # type: ignore
2105+
assert raises(lambda: "AAA" * f, TypeError) # type: ignore
21052106
assert f * g == R_test([3, 4 + 6, 8])
21062107
assert f * 2 == R_test([-2,-4])
21072108
assert f * fmpz(2) == R_test([-2,-4])
@@ -2112,18 +2113,18 @@ def test_fmpz_mod_poly():
21122113

21132114
# scalar_mul
21142115
assert 2 * f == f.scalar_mul(2)
2115-
assert raises(lambda: f.scalar_mul("AAA"), TypeError)
2116+
assert raises(lambda: f.scalar_mul("AAA"), TypeError) # type: ignore
21162117

21172118
# Exact division
21182119
assert raises(lambda: f.exact_division(f_cmp), ValueError)
2119-
assert raises(lambda: f.exact_division("AAA"), TypeError)
2120+
assert raises(lambda: f.exact_division("AAA"), TypeError) # type: ignore
21202121
assert raises(lambda: f.exact_division(0), ZeroDivisionError)
21212122

21222123
assert (f * g).exact_division(g) == f
21232124
assert raises(lambda: f.exact_division(g), DomainError)
21242125

21252126
# true div
2126-
assert raises(lambda: f / "AAA", TypeError)
2127+
assert raises(lambda: f / "AAA", TypeError) # type: ignore
21272128
assert raises(lambda: f / 0, ZeroDivisionError)
21282129
assert raises(lambda: f_cmp / 2, DomainError)
21292130

@@ -2134,8 +2135,8 @@ def test_fmpz_mod_poly():
21342135
# floor div
21352136
assert raises(lambda: 1 // f_bad, DomainError)
21362137
assert raises(lambda: f // f_cmp, ValueError)
2137-
assert raises(lambda: f // "AAA", TypeError)
2138-
assert raises(lambda: "AAA" // f, TypeError)
2138+
assert raises(lambda: f // "AAA", TypeError) # type: ignore
2139+
assert raises(lambda: "AAA" // f, TypeError) # type: ignore
21392140
assert (f * g) // g == f
21402141
assert (f + f) // 2 == f
21412142
assert (f + f) // fmpz(2) == f
@@ -2156,9 +2157,9 @@ def test_fmpz_mod_poly():
21562157

21572158
# Check other typechecks for pow_mod
21582159
assert raises(lambda: pow(f, -2, g), ValueError)
2159-
assert raises(lambda: pow(f, 1, "A"), TypeError)
2160-
assert raises(lambda: pow(f, "A", g), TypeError)
2161-
assert raises(lambda: f.pow_mod(2**32, g, mod_rev_inv="A"), TypeError)
2160+
assert raises(lambda: pow(f, 1, "A"), TypeError) # type: ignore
2161+
assert raises(lambda: pow(f, "A", g), TypeError) # type: ignore
2162+
assert raises(lambda: f.pow_mod(2**32, g, mod_rev_inv="A"), TypeError) # type: ignore
21622163

21632164
# Shifts
21642165
assert raises(lambda: R_test([1,2,3]).left_shift(-1), ValueError)
@@ -2169,8 +2170,8 @@ def test_fmpz_mod_poly():
21692170
# Mod
21702171
assert raises(lambda: f % f_bad, ValueError)
21712172
assert raises(lambda: 123 % f_bad, DomainError)
2172-
assert raises(lambda: f % "AAA", TypeError)
2173-
assert raises(lambda: tuple() % f, TypeError)
2173+
assert raises(lambda: f % "AAA", TypeError) # type: ignore
2174+
assert raises(lambda: tuple() % f, TypeError) # type: ignore
21742175

21752176
assert f % 1 == 0
21762177
assert R_test.one() % 1 == 0
@@ -2185,17 +2186,17 @@ def test_fmpz_mod_poly():
21852186
assert h(-1) == R_test.modulus() - 1
21862187
h = R_test([0, 0, 1])
21872188
assert h(1) == h(-1)
2188-
assert raises(lambda: h("AAA"), TypeError)
2189+
assert raises(lambda: h("AAA"), TypeError) # type: ignore
21892190
assert f([-1,-2,-3]) == [f(x) for x in [-1, -2, -3]]
21902191

21912192
# compose
2192-
assert raises(lambda: h.compose("AAA"), TypeError)
2193+
assert raises(lambda: h.compose("AAA"), TypeError) # type: ignore
21932194

21942195
# compose mod
21952196
mod = R_test([1,2,3,4])
21962197
assert f.compose(h) % mod == f.compose_mod(h, mod)
2197-
assert raises(lambda: h.compose_mod("AAA", mod), TypeError)
2198-
assert raises(lambda: h.compose_mod(f, "AAA"), TypeError)
2198+
assert raises(lambda: h.compose_mod("AAA", mod), TypeError) # type: ignore
2199+
assert raises(lambda: h.compose_mod(f, "AAA"), TypeError) # type: ignore
21992200
assert raises(lambda: h.compose_mod(f, R_test(0)), ZeroDivisionError)
22002201

22012202
# Reverse
@@ -2212,26 +2213,26 @@ def test_fmpz_mod_poly():
22122213

22132214
# mulmod
22142215
assert f.mul_mod(f, g) == (f*f) % g
2215-
assert raises(lambda: f.mul_mod(f, "AAA"), TypeError)
2216-
assert raises(lambda: f.mul_mod("AAA", g), TypeError)
2216+
assert raises(lambda: f.mul_mod(f, "AAA"), TypeError) # type: ignore
2217+
assert raises(lambda: f.mul_mod("AAA", g), TypeError) # type: ignore
22172218

22182219
# pow_mod
22192220
assert f.pow_mod(2, g) == (f*f) % g
2220-
assert raises(lambda: f.pow_mod(2, "AAA"), TypeError)
2221+
assert raises(lambda: f.pow_mod(2, "AAA"), TypeError) # type: ignore
22212222

22222223
# divmod
22232224
S, T = f.divmod(g)
22242225
assert S*g + T == f
2225-
assert raises(lambda: f.divmod("AAA"), TypeError)
2226+
assert raises(lambda: f.divmod("AAA"), TypeError) # type: ignore
22262227
assert raises(lambda: f_bad.divmod(f_bad), ValueError)
22272228

22282229
# gcd
22292230
assert raises(lambda: f_cmp.gcd(f_cmp), DomainError)
2230-
assert raises(lambda: f.gcd("f"), TypeError)
2231+
assert raises(lambda: f.gcd("f"), TypeError) # type: ignore
22312232

22322233
# xgcd
22332234
assert raises(lambda: (f_cmp).xgcd(f_cmp), ValueError)
2234-
assert raises(lambda: (f).xgcd("f_cmp"), TypeError)
2235+
assert raises(lambda: (f).xgcd("f_cmp"), TypeError) # type: ignore
22352236

22362237
# disc.
22372238
assert raises(lambda: (f_cmp).discriminant(), NotImplementedError)
@@ -2242,7 +2243,7 @@ def test_fmpz_mod_poly():
22422243
# inverse_mod
22432244
f_inv = f.inverse_mod(g)
22442245
assert (f * f_inv) % g == 1
2245-
assert raises(lambda: f.inverse_mod("AAA"), TypeError)
2246+
assert raises(lambda: f.inverse_mod("AAA"), TypeError) # type: ignore
22462247
assert raises(lambda: (f_cmp).inverse_mod(f_cmp), ValueError)
22472248

22482249
f_inv = f.inverse_series_trunc(2)
@@ -2253,7 +2254,7 @@ def test_fmpz_mod_poly():
22532254
f1 = R_test([-3, 1])
22542255
f2 = R_test([-5, 1])
22552256
assert f1.resultant(f2) == (3 - 5)
2256-
assert raises(lambda: f.resultant("AAA"), TypeError)
2257+
assert raises(lambda: f.resultant("AAA"), TypeError) # type: ignore
22572258

22582259
# sqrt
22592260
f1 = R_test.random_element(irreducible=True)
@@ -2291,12 +2292,12 @@ def test_fmpz_mod_poly():
22912292

22922293
# minpoly
22932294
assert raises(lambda: R_cmp.minpoly([1,2,3,4]), NotImplementedError)
2294-
assert raises(lambda: R_test.minpoly(1), ValueError)
2295-
assert raises(lambda: R_test.minpoly([1,2,3,"AAA"]), ValueError)
2295+
assert raises(lambda: R_test.minpoly(1), TypeError) # type: ignore
2296+
assert raises(lambda: R_test.minpoly([1,2,3,"AAA"]), TypeError) # type: ignore
22962297

22972298
# multipoint_evaluation
2298-
assert raises(lambda: R_test([1,2,3]).multipoint_evaluate([1,2,3,"AAA"]), ValueError)
2299-
assert raises(lambda: R_test([1,2,3]).multipoint_evaluate("AAA"), ValueError)
2299+
assert raises(lambda: R_test([1,2,3]).multipoint_evaluate([1,2,3,"AAA"]), TypeError) # type: ignore
2300+
assert raises(lambda: R_test([1,2,3]).multipoint_evaluate("AAA"), TypeError) # type: ignore
23002301

23012302
f = R_test([1,2,3])
23022303
ell = [-1,-2,-3,-4,-5]
@@ -2315,16 +2316,16 @@ def test_fmpz_mod_poly():
23152316
assert not f.equal_trunc("A", 3)
23162317
assert not f.equal_trunc(f_cmp, 3)
23172318

2318-
assert raises(lambda: f.add_trunc("A", 1), TypeError)
2319+
assert raises(lambda: f.add_trunc("A", 1), TypeError) # type: ignore
23192320
assert raises(lambda: f.add_trunc(f_cmp, 1), ValueError)
23202321
assert f.add_trunc(g, 3) == (f + g) % x**3
23212322

2322-
assert raises(lambda: f.sub_trunc("A", 1), TypeError)
2323+
assert raises(lambda: f.sub_trunc("A", 1), TypeError) # type: ignore
23232324
assert raises(lambda: f.sub_trunc(f_cmp, 1), ValueError)
23242325
assert f.sub_trunc(g, 3) == (f - g) % x**3
23252326

2326-
assert raises(lambda: f.mul_low("A", h), TypeError)
2327-
assert raises(lambda: f.mul_low(g, "A"), TypeError)
2327+
assert raises(lambda: f.mul_low("A", h), TypeError) # type: ignore
2328+
assert raises(lambda: f.mul_low(g, "A"), TypeError) # type: ignore
23282329
assert f.mul_low(g, 3) == (f * g) % x**3
23292330

23302331
assert raises(lambda: f.pow_trunc(-1, 5), ValueError)

0 commit comments

Comments
 (0)