Metamath Proof Explorer


Theorem diophin

Description: If two sets are Diophantine, so is their intersection. (Contributed by Stefan O'Rear, 9-Oct-2014) (Revised by Stefan O'Rear, 6-May-2015)

Ref Expression
Assertion diophin ⊢ A ∈ Dioph ⁡ N ∧ B ∈ Dioph ⁡ N → A ∩ B ∈ Dioph ⁡ N

Proof

Step Hyp Ref Expression
1 eldiophelnn0 ⊢ A ∈ Dioph ⁡ N → N ∈ ℕ 0
2 id ⊢ N ∈ ℕ 0 → N ∈ ℕ 0
3 zex ⊢ ℤ ∈ V
4 difexg ⊢ ℤ ∈ V → ℤ ∖ ℤ ≥ N + 1 ∈ V
5 3 4 mp1i ⊢ N ∈ ℕ 0 → ℤ ∖ ℤ ≥ N + 1 ∈ V
6 ominf ⊢ ¬ ω ∈ Fin
7 nn0z ⊢ N ∈ ℕ 0 → N ∈ ℤ
8 lzenom ⊢ N ∈ ℤ → ℤ ∖ ℤ ≥ N + 1 ≈ ω
9 enfi ⊢ ℤ ∖ ℤ ≥ N + 1 ≈ ω → ℤ ∖ ℤ ≥ N + 1 ∈ Fin ↔ ω ∈ Fin
10 7 8 9 3syl ⊢ N ∈ ℕ 0 → ℤ ∖ ℤ ≥ N + 1 ∈ Fin ↔ ω ∈ Fin
11 6 10 mtbiri ⊢ N ∈ ℕ 0 → ¬ ℤ ∖ ℤ ≥ N + 1 ∈ Fin
12 fz1eqin ⊢ N ∈ ℕ 0 → 1 … N = ℤ ∖ ℤ ≥ N + 1 ∩ ℕ
13 inss1 ⊢ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ ⊆ ℤ ∖ ℤ ≥ N + 1
14 12 13 eqsstrdi ⊢ N ∈ ℕ 0 → 1 … N ⊆ ℤ ∖ ℤ ≥ N + 1
15 eldioph2b ⊢ N ∈ ℕ 0 ∧ ℤ ∖ ℤ ≥ N + 1 ∈ V ∧ ¬ ℤ ∖ ℤ ≥ N + 1 ∈ Fin ∧ 1 … N ⊆ ℤ ∖ ℤ ≥ N + 1 → A ∈ Dioph ⁡ N ↔ ∃ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0
16 2 5 11 14 15 syl22anc ⊢ N ∈ ℕ 0 → A ∈ Dioph ⁡ N ↔ ∃ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0
17 nnex ⊢ ℕ ∈ V
18 17 a1i ⊢ N ∈ ℕ 0 → ℕ ∈ V
19 1z ⊢ 1 ∈ ℤ
20 nnuz ⊢ ℕ = ℤ ≥ 1
21 20 uzinf ⊢ 1 ∈ ℤ → ¬ ℕ ∈ Fin
22 19 21 mp1i ⊢ N ∈ ℕ 0 → ¬ ℕ ∈ Fin
23 elfznn ⊢ a ∈ 1 … N → a ∈ ℕ
24 23 ssriv ⊢ 1 … N ⊆ ℕ
25 24 a1i ⊢ N ∈ ℕ 0 → 1 … N ⊆ ℕ
26 eldioph2b ⊢ N ∈ ℕ 0 ∧ ℕ ∈ V ∧ ¬ ℕ ∈ Fin ∧ 1 … N ⊆ ℕ → B ∈ Dioph ⁡ N ↔ ∃ b ∈ mzPoly ⁡ ℕ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0
27 2 18 22 25 26 syl22anc ⊢ N ∈ ℕ 0 → B ∈ Dioph ⁡ N ↔ ∃ b ∈ mzPoly ⁡ ℕ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0
28 16 27 anbi12d ⊢ N ∈ ℕ 0 → A ∈ Dioph ⁡ N ∧ B ∈ Dioph ⁡ N ↔ ∃ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ ∃ b ∈ mzPoly ⁡ ℕ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0
29 reeanv ⊢ ∃ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∃ b ∈ mzPoly ⁡ ℕ A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ ∃ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ ∃ b ∈ mzPoly ⁡ ℕ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0
30 inab ⊢ c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∩ c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0
31 reeanv ⊢ ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∃ e ∈ ℕ 0 ℕ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0
32 simplrl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1
33 simplrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → e ∈ ℕ 0 ℕ
34 12 eqcomd ⊢ N ∈ ℕ 0 → ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = 1 … N
35 34 reseq2d ⊢ N ∈ ℕ 0 → d ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = d ↾ 1 … N
36 35 ad3antrrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = d ↾ 1 … N
37 34 reseq2d ⊢ N ∈ ℕ 0 → e ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = e ↾ 1 … N
38 37 ad3antrrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → e ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = e ↾ 1 … N
39 simprrl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → c = e ↾ 1 … N
40 simprll ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → c = d ↾ 1 … N
41 38 39 40 3eqtr2d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → e ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = d ↾ 1 … N
42 36 41 eqtr4d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = e ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ
43 elmapresaun ⊢ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ d ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = e ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ → d ∪ e ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∪ ℕ
44 32 33 42 43 syl3anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ∪ e ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∪ ℕ
45 20 uneq2i ⊢ ℤ ∖ ℤ ≥ N + 1 ∪ ℕ = ℤ ∖ ℤ ≥ N + 1 ∪ ℤ ≥ 1
46 19 a1i ⊢ N ∈ ℕ 0 → 1 ∈ ℤ
47 nn0p1nn ⊢ N ∈ ℕ 0 → N + 1 ∈ ℕ
48 47 nnge1d ⊢ N ∈ ℕ 0 → 1 ≤ N + 1
49 lzunuz ⊢ N ∈ ℤ ∧ 1 ∈ ℤ ∧ 1 ≤ N + 1 → ℤ ∖ ℤ ≥ N + 1 ∪ ℤ ≥ 1 = ℤ
50 7 46 48 49 syl3anc ⊢ N ∈ ℕ 0 → ℤ ∖ ℤ ≥ N + 1 ∪ ℤ ≥ 1 = ℤ
51 45 50 eqtrid ⊢ N ∈ ℕ 0 → ℤ ∖ ℤ ≥ N + 1 ∪ ℕ = ℤ
52 51 oveq2d ⊢ N ∈ ℕ 0 → ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∪ ℕ = ℕ 0 ℤ
53 52 ad3antrrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∪ ℕ = ℕ 0 ℤ
54 44 53 eleqtrd ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ∪ e ∈ ℕ 0 ℤ
55 unidm ⊢ c ∪ c = c
56 40 39 uneq12d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → c ∪ c = d ↾ 1 … N ∪ e ↾ 1 … N
57 55 56 eqtr3id ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → c = d ↾ 1 … N ∪ e ↾ 1 … N
58 resundir ⊢ d ∪ e ↾ 1 … N = d ↾ 1 … N ∪ e ↾ 1 … N
59 57 58 eqtr4di ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → c = d ∪ e ↾ 1 … N
60 uncom ⊢ d ∪ e = e ∪ d
61 60 reseq1i ⊢ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = e ∪ d ↾ ℤ ∖ ℤ ≥ N + 1
62 incom ⊢ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = ℤ ∖ ℤ ≥ N + 1 ∩ ℕ
63 62 34 eqtrid ⊢ N ∈ ℕ 0 → ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = 1 … N
64 63 reseq2d ⊢ N ∈ ℕ 0 → e ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = e ↾ 1 … N
65 64 ad3antrrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → e ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = e ↾ 1 … N
66 63 reseq2d ⊢ N ∈ ℕ 0 → d ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = d ↾ 1 … N
67 66 ad3antrrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = d ↾ 1 … N
68 67 40 39 3eqtr2d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = e ↾ 1 … N
69 65 68 eqtr4d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → e ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = d ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1
70 elmapresaunres2 ⊢ e ∈ ℕ 0 ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 = d ↾ ℕ ∩ ℤ ∖ ℤ ≥ N + 1 → e ∪ d ↾ ℤ ∖ ℤ ≥ N + 1 = d
71 33 32 69 70 syl3anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → e ∪ d ↾ ℤ ∖ ℤ ≥ N + 1 = d
72 61 71 eqtrid ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = d
73 72 fveq2d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → a ⁡ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = a ⁡ d
74 simprlr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → a ⁡ d = 0
75 73 74 eqtrd ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → a ⁡ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = 0
76 elmapresaunres2 ⊢ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ d ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ = e ↾ ℤ ∖ ℤ ≥ N + 1 ∩ ℕ → d ∪ e ↾ ℕ = e
77 32 33 42 76 syl3anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → d ∪ e ↾ ℕ = e
78 77 fveq2d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → b ⁡ d ∪ e ↾ ℕ = b ⁡ e
79 simprrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → b ⁡ e = 0
80 78 79 eqtrd ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → b ⁡ d ∪ e ↾ ℕ = 0
81 59 75 80 jca32 ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → c = d ∪ e ↾ 1 … N ∧ a ⁡ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ d ∪ e ↾ ℕ = 0
82 reseq1 ⊢ f = d ∪ e → f ↾ 1 … N = d ∪ e ↾ 1 … N
83 82 eqeq2d ⊢ f = d ∪ e → c = f ↾ 1 … N ↔ c = d ∪ e ↾ 1 … N
84 reseq1 ⊢ f = d ∪ e → f ↾ ℤ ∖ ℤ ≥ N + 1 = d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1
85 84 fveqeq2d ⊢ f = d ∪ e → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ↔ a ⁡ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = 0
86 reseq1 ⊢ f = d ∪ e → f ↾ ℕ = d ∪ e ↾ ℕ
87 86 fveqeq2d ⊢ f = d ∪ e → b ⁡ f ↾ ℕ = 0 ↔ b ⁡ d ∪ e ↾ ℕ = 0
88 85 87 anbi12d ⊢ f = d ∪ e → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 ↔ a ⁡ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ d ∪ e ↾ ℕ = 0
89 83 88 anbi12d ⊢ f = d ∪ e → c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 ↔ c = d ∪ e ↾ 1 … N ∧ a ⁡ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ d ∪ e ↾ ℕ = 0
90 89 rspcev ⊢ d ∪ e ∈ ℕ 0 ℤ ∧ c = d ∪ e ↾ 1 … N ∧ a ⁡ d ∪ e ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ d ∪ e ↾ ℕ = 0 → ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0
91 54 81 90 syl2anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ ∧ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0
92 91 ex ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ e ∈ ℕ 0 ℕ → c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0
93 92 rexlimdvva ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∃ e ∈ ℕ 0 ℕ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 → ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0
94 simpr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → f ∈ ℕ 0 ℤ
95 difss ⊢ ℤ ∖ ℤ ≥ N + 1 ⊆ ℤ
96 elmapssres ⊢ f ∈ ℕ 0 ℤ ∧ ℤ ∖ ℤ ≥ N + 1 ⊆ ℤ → f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1
97 94 95 96 sylancl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1
98 97 adantr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1
99 nnssz ⊢ ℕ ⊆ ℤ
100 elmapssres ⊢ f ∈ ℕ 0 ℤ ∧ ℕ ⊆ ℤ → f ↾ ℕ ∈ ℕ 0 ℕ
101 94 99 100 sylancl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → f ↾ ℕ ∈ ℕ 0 ℕ
102 101 adantr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → f ↾ ℕ ∈ ℕ 0 ℕ
103 simprl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → c = f ↾ 1 … N
104 14 ad3antrrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → 1 … N ⊆ ℤ ∖ ℤ ≥ N + 1
105 104 resabs1d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N = f ↾ 1 … N
106 103 105 eqtr4d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N
107 simprrl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0
108 106 107 jca ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0
109 resabs1 ⊢ 1 … N ⊆ ℕ → f ↾ ℕ ↾ 1 … N = f ↾ 1 … N
110 24 109 mp1i ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → f ↾ ℕ ↾ 1 … N = f ↾ 1 … N
111 103 110 eqtr4d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → c = f ↾ ℕ ↾ 1 … N
112 simprrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → b ⁡ f ↾ ℕ = 0
113 108 111 112 jca32 ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ c = f ↾ ℕ ↾ 1 … N ∧ b ⁡ f ↾ ℕ = 0
114 reseq1 ⊢ d = f ↾ ℤ ∖ ℤ ≥ N + 1 → d ↾ 1 … N = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N
115 114 eqeq2d ⊢ d = f ↾ ℤ ∖ ℤ ≥ N + 1 → c = d ↾ 1 … N ↔ c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N
116 fveqeq2 ⊢ d = f ↾ ℤ ∖ ℤ ≥ N + 1 → a ⁡ d = 0 ↔ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0
117 115 116 anbi12d ⊢ d = f ↾ ℤ ∖ ℤ ≥ N + 1 → c = d ↾ 1 … N ∧ a ⁡ d = 0 ↔ c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0
118 117 anbi1d ⊢ d = f ↾ ℤ ∖ ℤ ≥ N + 1 → c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0
119 reseq1 ⊢ e = f ↾ ℕ → e ↾ 1 … N = f ↾ ℕ ↾ 1 … N
120 119 eqeq2d ⊢ e = f ↾ ℕ → c = e ↾ 1 … N ↔ c = f ↾ ℕ ↾ 1 … N
121 fveqeq2 ⊢ e = f ↾ ℕ → b ⁡ e = 0 ↔ b ⁡ f ↾ ℕ = 0
122 120 121 anbi12d ⊢ e = f ↾ ℕ → c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ c = f ↾ ℕ ↾ 1 … N ∧ b ⁡ f ↾ ℕ = 0
123 122 anbi2d ⊢ e = f ↾ ℕ → c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ c = f ↾ ℕ ↾ 1 … N ∧ b ⁡ f ↾ ℕ = 0
124 118 123 rspc2ev ⊢ f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∧ f ↾ ℕ ∈ ℕ 0 ℕ ∧ c = f ↾ ℤ ∖ ℤ ≥ N + 1 ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ c = f ↾ ℕ ↾ 1 … N ∧ b ⁡ f ↾ ℕ = 0 → ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∃ e ∈ ℕ 0 ℕ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0
125 98 102 113 124 syl3anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ ∧ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∃ e ∈ ℕ 0 ℕ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0
126 125 rexlimdva2 ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 → ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∃ e ∈ ℕ 0 ℕ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0
127 93 126 impbid ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∃ e ∈ ℕ 0 ℕ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0
128 simplrl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1
129 mzpf ⊢ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 → a : ℤ ℤ ∖ ℤ ≥ N + 1 ⟶ ℤ
130 128 129 syl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → a : ℤ ℤ ∖ ℤ ≥ N + 1 ⟶ ℤ
131 nn0ssz ⊢ ℕ 0 ⊆ ℤ
132 mapss ⊢ ℤ ∈ V ∧ ℕ 0 ⊆ ℤ → ℕ 0 ℤ ⊆ ℤ ℤ
133 3 131 132 mp2an ⊢ ℕ 0 ℤ ⊆ ℤ ℤ
134 133 sseli ⊢ f ∈ ℕ 0 ℤ → f ∈ ℤ ℤ
135 elmapssres ⊢ f ∈ ℤ ℤ ∧ ℤ ∖ ℤ ≥ N + 1 ⊆ ℤ → f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℤ ℤ ∖ ℤ ≥ N + 1
136 134 95 135 sylancl ⊢ f ∈ ℕ 0 ℤ → f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℤ ℤ ∖ ℤ ≥ N + 1
137 136 adantl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℤ ℤ ∖ ℤ ≥ N + 1
138 130 137 ffvelcdmd ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℤ
139 138 zred ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℝ
140 simplrr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → b ∈ mzPoly ⁡ ℕ
141 mzpf ⊢ b ∈ mzPoly ⁡ ℕ → b : ℤ ℕ ⟶ ℤ
142 140 141 syl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → b : ℤ ℕ ⟶ ℤ
143 elmapssres ⊢ f ∈ ℤ ℤ ∧ ℕ ⊆ ℤ → f ↾ ℕ ∈ ℤ ℕ
144 134 99 143 sylancl ⊢ f ∈ ℕ 0 ℤ → f ↾ ℕ ∈ ℤ ℕ
145 144 adantl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → f ↾ ℕ ∈ ℤ ℕ
146 142 145 ffvelcdmd ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → b ⁡ f ↾ ℕ ∈ ℤ
147 146 zred ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → b ⁡ f ↾ ℕ ∈ ℝ
148 sumsqeq0 ⊢ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 ∈ ℝ ∧ b ⁡ f ↾ ℕ ∈ ℝ → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 ↔ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ f ↾ ℕ 2 = 0
149 139 147 148 syl2anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 ↔ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ f ↾ ℕ 2 = 0
150 134 adantl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → f ∈ ℤ ℤ
151 reseq1 ⊢ g = f → g ↾ ℤ ∖ ℤ ≥ N + 1 = f ↾ ℤ ∖ ℤ ≥ N + 1
152 151 fveq2d ⊢ g = f → a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 = a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1
153 152 oveq1d ⊢ g = f → a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 = a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2
154 reseq1 ⊢ g = f → g ↾ ℕ = f ↾ ℕ
155 154 fveq2d ⊢ g = f → b ⁡ g ↾ ℕ = b ⁡ f ↾ ℕ
156 155 oveq1d ⊢ g = f → b ⁡ g ↾ ℕ 2 = b ⁡ f ↾ ℕ 2
157 153 156 oveq12d ⊢ g = f → a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 = a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ f ↾ ℕ 2
158 eqid ⊢ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 = g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2
159 ovex ⊢ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ f ↾ ℕ 2 ∈ V
160 157 158 159 fvmpt ⊢ f ∈ ℤ ℤ → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ f ↾ ℕ 2
161 150 160 syl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ f ↾ ℕ 2
162 161 eqeq1d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0 ↔ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ f ↾ ℕ 2 = 0
163 149 162 bitr4d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 ↔ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0
164 163 anbi2d ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ ∧ f ∈ ℕ 0 ℤ → c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 ↔ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0
165 164 rexbidva ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ a ⁡ f ↾ ℤ ∖ ℤ ≥ N + 1 = 0 ∧ b ⁡ f ↾ ℕ = 0 ↔ ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0
166 127 165 bitrd ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 ∃ e ∈ ℕ 0 ℕ c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0
167 31 166 bitr3id ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 ↔ ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0
168 167 abbidv ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 = c | ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0
169 30 168 eqtrid ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∩ c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 = c | ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0
170 simpl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → N ∈ ℕ 0
171 fzssuz ⊢ 1 … N ⊆ ℤ ≥ 1
172 uzssz ⊢ ℤ ≥ 1 ⊆ ℤ
173 171 172 sstri ⊢ 1 … N ⊆ ℤ
174 3 173 pm3.2i ⊢ ℤ ∈ V ∧ 1 … N ⊆ ℤ
175 174 a1i ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ℤ ∈ V ∧ 1 … N ⊆ ℤ
176 3 a1i ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ℤ ∈ V
177 95 a1i ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ℤ ∖ ℤ ≥ N + 1 ⊆ ℤ
178 simprl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1
179 mzpresrename ⊢ ℤ ∈ V ∧ ℤ ∖ ℤ ≥ N + 1 ⊆ ℤ ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 ∈ mzPoly ⁡ ℤ
180 176 177 178 179 syl3anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 ∈ mzPoly ⁡ ℤ
181 2nn0 ⊢ 2 ∈ ℕ 0
182 mzpexpmpt ⊢ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 ∈ mzPoly ⁡ ℤ ∧ 2 ∈ ℕ 0 → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 ∈ mzPoly ⁡ ℤ
183 180 181 182 sylancl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 ∈ mzPoly ⁡ ℤ
184 99 a1i ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → ℕ ⊆ ℤ
185 simprr ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → b ∈ mzPoly ⁡ ℕ
186 mzpresrename ⊢ ℤ ∈ V ∧ ℕ ⊆ ℤ ∧ b ∈ mzPoly ⁡ ℕ → g ∈ ℤ ℤ ⟼ b ⁡ g ↾ ℕ ∈ mzPoly ⁡ ℤ
187 176 184 185 186 syl3anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → g ∈ ℤ ℤ ⟼ b ⁡ g ↾ ℕ ∈ mzPoly ⁡ ℤ
188 mzpexpmpt ⊢ g ∈ ℤ ℤ ⟼ b ⁡ g ↾ ℕ ∈ mzPoly ⁡ ℤ ∧ 2 ∈ ℕ 0 → g ∈ ℤ ℤ ⟼ b ⁡ g ↾ ℕ 2 ∈ mzPoly ⁡ ℤ
189 187 181 188 sylancl ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → g ∈ ℤ ℤ ⟼ b ⁡ g ↾ ℕ 2 ∈ mzPoly ⁡ ℤ
190 mzpaddmpt ⊢ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 ∈ mzPoly ⁡ ℤ ∧ g ∈ ℤ ℤ ⟼ b ⁡ g ↾ ℕ 2 ∈ mzPoly ⁡ ℤ → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ∈ mzPoly ⁡ ℤ
191 183 189 190 syl2anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ∈ mzPoly ⁡ ℤ
192 eldioph2 ⊢ N ∈ ℕ 0 ∧ ℤ ∈ V ∧ 1 … N ⊆ ℤ ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ∈ mzPoly ⁡ ℤ → c | ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0 ∈ Dioph ⁡ N
193 170 175 191 192 syl3anc ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → c | ∃ f ∈ ℕ 0 ℤ c = f ↾ 1 … N ∧ g ∈ ℤ ℤ ⟼ a ⁡ g ↾ ℤ ∖ ℤ ≥ N + 1 2 + b ⁡ g ↾ ℕ 2 ⁡ f = 0 ∈ Dioph ⁡ N
194 169 193 eqeltrd ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∩ c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 ∈ Dioph ⁡ N
195 ineq12 ⊢ A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 → A ∩ B = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∩ c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0
196 195 eleq1d ⊢ A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 → A ∩ B ∈ Dioph ⁡ N ↔ c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∩ c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 ∈ Dioph ⁡ N
197 194 196 syl5ibrcom ⊢ N ∈ ℕ 0 ∧ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∧ b ∈ mzPoly ⁡ ℕ → A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 → A ∩ B ∈ Dioph ⁡ N
198 197 rexlimdvva ⊢ N ∈ ℕ 0 → ∃ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 ∃ b ∈ mzPoly ⁡ ℕ A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 → A ∩ B ∈ Dioph ⁡ N
199 29 198 biimtrrid ⊢ N ∈ ℕ 0 → ∃ a ∈ mzPoly ⁡ ℤ ∖ ℤ ≥ N + 1 A = c | ∃ d ∈ ℕ 0 ℤ ∖ ℤ ≥ N + 1 c = d ↾ 1 … N ∧ a ⁡ d = 0 ∧ ∃ b ∈ mzPoly ⁡ ℕ B = c | ∃ e ∈ ℕ 0 ℕ c = e ↾ 1 … N ∧ b ⁡ e = 0 → A ∩ B ∈ Dioph ⁡ N
200 28 199 sylbid ⊢ N ∈ ℕ 0 → A ∈ Dioph ⁡ N ∧ B ∈ Dioph ⁡ N → A ∩ B ∈ Dioph ⁡ N
201 1 200 syl ⊢ A ∈ Dioph ⁡ N → A ∈ Dioph ⁡ N ∧ B ∈ Dioph ⁡ N → A ∩ B ∈ Dioph ⁡ N
202 201 anabsi5 ⊢ A ∈ Dioph ⁡ N ∧ B ∈ Dioph ⁡ N → A ∩ B ∈ Dioph ⁡ N