MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  crth Structured version   Visualization version   GIF version

Theorem crth 15321
Description: The Chinese Remainder Theorem: the function that maps 𝑥 to its remainder classes mod 𝑀 and mod 𝑁 is 1-1 and onto when 𝑀 and 𝑁 are coprime. (Contributed by Mario Carneiro, 24-Feb-2014.) (Proof shortened by Mario Carneiro, 2-May-2016.)
Hypotheses
Ref Expression
crth.1 𝑆 = (0..^(𝑀 · 𝑁))
crth.2 𝑇 = ((0..^𝑀) × (0..^𝑁))
crth.3 𝐹 = (𝑥𝑆 ↦ ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩)
crth.4 (𝜑 → (𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ (𝑀 gcd 𝑁) = 1))
Assertion
Ref Expression
crth (𝜑𝐹:𝑆1-1-onto𝑇)
Distinct variable groups:   𝑥,𝑀   𝜑,𝑥   𝑥,𝑆   𝑥,𝑇   𝑥,𝑁
Allowed substitution hint:   𝐹(𝑥)

Proof of Theorem crth
Dummy variables 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elfzoelz 12339 . . . . . 6 (𝑥 ∈ (0..^(𝑀 · 𝑁)) → 𝑥 ∈ ℤ)
2 crth.1 . . . . . 6 𝑆 = (0..^(𝑀 · 𝑁))
31, 2eleq2s 2706 . . . . 5 (𝑥𝑆𝑥 ∈ ℤ)
4 simpr 476 . . . . . . . 8 ((𝜑𝑥 ∈ ℤ) → 𝑥 ∈ ℤ)
5 crth.4 . . . . . . . . . 10 (𝜑 → (𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ (𝑀 gcd 𝑁) = 1))
65simp1d 1066 . . . . . . . . 9 (𝜑𝑀 ∈ ℕ)
76adantr 480 . . . . . . . 8 ((𝜑𝑥 ∈ ℤ) → 𝑀 ∈ ℕ)
8 zmodfzo 12555 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑀 ∈ ℕ) → (𝑥 mod 𝑀) ∈ (0..^𝑀))
94, 7, 8syl2anc 691 . . . . . . 7 ((𝜑𝑥 ∈ ℤ) → (𝑥 mod 𝑀) ∈ (0..^𝑀))
105simp2d 1067 . . . . . . . . 9 (𝜑𝑁 ∈ ℕ)
1110adantr 480 . . . . . . . 8 ((𝜑𝑥 ∈ ℤ) → 𝑁 ∈ ℕ)
12 zmodfzo 12555 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑁 ∈ ℕ) → (𝑥 mod 𝑁) ∈ (0..^𝑁))
134, 11, 12syl2anc 691 . . . . . . 7 ((𝜑𝑥 ∈ ℤ) → (𝑥 mod 𝑁) ∈ (0..^𝑁))
14 opelxpi 5072 . . . . . . 7 (((𝑥 mod 𝑀) ∈ (0..^𝑀) ∧ (𝑥 mod 𝑁) ∈ (0..^𝑁)) → ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩ ∈ ((0..^𝑀) × (0..^𝑁)))
159, 13, 14syl2anc 691 . . . . . 6 ((𝜑𝑥 ∈ ℤ) → ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩ ∈ ((0..^𝑀) × (0..^𝑁)))
16 crth.2 . . . . . 6 𝑇 = ((0..^𝑀) × (0..^𝑁))
1715, 16syl6eleqr 2699 . . . . 5 ((𝜑𝑥 ∈ ℤ) → ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩ ∈ 𝑇)
183, 17sylan2 490 . . . 4 ((𝜑𝑥𝑆) → ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩ ∈ 𝑇)
19 crth.3 . . . 4 𝐹 = (𝑥𝑆 ↦ ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩)
2018, 19fmptd 6292 . . 3 (𝜑𝐹:𝑆𝑇)
21 oveq1 6556 . . . . . . . . . 10 (𝑥 = 𝑦 → (𝑥 mod 𝑀) = (𝑦 mod 𝑀))
22 oveq1 6556 . . . . . . . . . 10 (𝑥 = 𝑦 → (𝑥 mod 𝑁) = (𝑦 mod 𝑁))
2321, 22opeq12d 4348 . . . . . . . . 9 (𝑥 = 𝑦 → ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩ = ⟨(𝑦 mod 𝑀), (𝑦 mod 𝑁)⟩)
24 opex 4859 . . . . . . . . 9 ⟨(𝑦 mod 𝑀), (𝑦 mod 𝑁)⟩ ∈ V
2523, 19, 24fvmpt 6191 . . . . . . . 8 (𝑦𝑆 → (𝐹𝑦) = ⟨(𝑦 mod 𝑀), (𝑦 mod 𝑁)⟩)
2625ad2antrl 760 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝐹𝑦) = ⟨(𝑦 mod 𝑀), (𝑦 mod 𝑁)⟩)
27 oveq1 6556 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝑥 mod 𝑀) = (𝑧 mod 𝑀))
28 oveq1 6556 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝑥 mod 𝑁) = (𝑧 mod 𝑁))
2927, 28opeq12d 4348 . . . . . . . . 9 (𝑥 = 𝑧 → ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩ = ⟨(𝑧 mod 𝑀), (𝑧 mod 𝑁)⟩)
30 opex 4859 . . . . . . . . 9 ⟨(𝑧 mod 𝑀), (𝑧 mod 𝑁)⟩ ∈ V
3129, 19, 30fvmpt 6191 . . . . . . . 8 (𝑧𝑆 → (𝐹𝑧) = ⟨(𝑧 mod 𝑀), (𝑧 mod 𝑁)⟩)
3231ad2antll 761 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝐹𝑧) = ⟨(𝑧 mod 𝑀), (𝑧 mod 𝑁)⟩)
3326, 32eqeq12d 2625 . . . . . 6 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝐹𝑦) = (𝐹𝑧) ↔ ⟨(𝑦 mod 𝑀), (𝑦 mod 𝑁)⟩ = ⟨(𝑧 mod 𝑀), (𝑧 mod 𝑁)⟩))
34 ovex 6577 . . . . . . 7 (𝑦 mod 𝑀) ∈ V
35 ovex 6577 . . . . . . 7 (𝑦 mod 𝑁) ∈ V
3634, 35opth 4871 . . . . . 6 (⟨(𝑦 mod 𝑀), (𝑦 mod 𝑁)⟩ = ⟨(𝑧 mod 𝑀), (𝑧 mod 𝑁)⟩ ↔ ((𝑦 mod 𝑀) = (𝑧 mod 𝑀) ∧ (𝑦 mod 𝑁) = (𝑧 mod 𝑁)))
3733, 36syl6bb 275 . . . . 5 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝐹𝑦) = (𝐹𝑧) ↔ ((𝑦 mod 𝑀) = (𝑧 mod 𝑀) ∧ (𝑦 mod 𝑁) = (𝑧 mod 𝑁))))
386adantr 480 . . . . . . . 8 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑀 ∈ ℕ)
3938nnzd 11357 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑀 ∈ ℤ)
4010adantr 480 . . . . . . . 8 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑁 ∈ ℕ)
4140nnzd 11357 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑁 ∈ ℤ)
42 simprl 790 . . . . . . . . . 10 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑦𝑆)
4342, 2syl6eleq 2698 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑦 ∈ (0..^(𝑀 · 𝑁)))
44 elfzoelz 12339 . . . . . . . . 9 (𝑦 ∈ (0..^(𝑀 · 𝑁)) → 𝑦 ∈ ℤ)
4543, 44syl 17 . . . . . . . 8 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑦 ∈ ℤ)
46 simprr 792 . . . . . . . . . 10 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑧𝑆)
4746, 2syl6eleq 2698 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑧 ∈ (0..^(𝑀 · 𝑁)))
48 elfzoelz 12339 . . . . . . . . 9 (𝑧 ∈ (0..^(𝑀 · 𝑁)) → 𝑧 ∈ ℤ)
4947, 48syl 17 . . . . . . . 8 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑧 ∈ ℤ)
5045, 49zsubcld 11363 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝑦𝑧) ∈ ℤ)
515simp3d 1068 . . . . . . . 8 (𝜑 → (𝑀 gcd 𝑁) = 1)
5251adantr 480 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝑀 gcd 𝑁) = 1)
53 coprmdvds2 15206 . . . . . . 7 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ (𝑦𝑧) ∈ ℤ) ∧ (𝑀 gcd 𝑁) = 1) → ((𝑀 ∥ (𝑦𝑧) ∧ 𝑁 ∥ (𝑦𝑧)) → (𝑀 · 𝑁) ∥ (𝑦𝑧)))
5439, 41, 50, 52, 53syl31anc 1321 . . . . . 6 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝑀 ∥ (𝑦𝑧) ∧ 𝑁 ∥ (𝑦𝑧)) → (𝑀 · 𝑁) ∥ (𝑦𝑧)))
55 moddvds 14829 . . . . . . . 8 ((𝑀 ∈ ℕ ∧ 𝑦 ∈ ℤ ∧ 𝑧 ∈ ℤ) → ((𝑦 mod 𝑀) = (𝑧 mod 𝑀) ↔ 𝑀 ∥ (𝑦𝑧)))
5638, 45, 49, 55syl3anc 1318 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝑦 mod 𝑀) = (𝑧 mod 𝑀) ↔ 𝑀 ∥ (𝑦𝑧)))
57 moddvds 14829 . . . . . . . 8 ((𝑁 ∈ ℕ ∧ 𝑦 ∈ ℤ ∧ 𝑧 ∈ ℤ) → ((𝑦 mod 𝑁) = (𝑧 mod 𝑁) ↔ 𝑁 ∥ (𝑦𝑧)))
5840, 45, 49, 57syl3anc 1318 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝑦 mod 𝑁) = (𝑧 mod 𝑁) ↔ 𝑁 ∥ (𝑦𝑧)))
5956, 58anbi12d 743 . . . . . 6 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (((𝑦 mod 𝑀) = (𝑧 mod 𝑀) ∧ (𝑦 mod 𝑁) = (𝑧 mod 𝑁)) ↔ (𝑀 ∥ (𝑦𝑧) ∧ 𝑁 ∥ (𝑦𝑧))))
6045zred 11358 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑦 ∈ ℝ)
6138, 40nnmulcld 10945 . . . . . . . . . 10 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝑀 · 𝑁) ∈ ℕ)
6261nnrpd 11746 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝑀 · 𝑁) ∈ ℝ+)
63 elfzole1 12347 . . . . . . . . . 10 (𝑦 ∈ (0..^(𝑀 · 𝑁)) → 0 ≤ 𝑦)
6443, 63syl 17 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 0 ≤ 𝑦)
65 elfzolt2 12348 . . . . . . . . . 10 (𝑦 ∈ (0..^(𝑀 · 𝑁)) → 𝑦 < (𝑀 · 𝑁))
6643, 65syl 17 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑦 < (𝑀 · 𝑁))
67 modid 12557 . . . . . . . . 9 (((𝑦 ∈ ℝ ∧ (𝑀 · 𝑁) ∈ ℝ+) ∧ (0 ≤ 𝑦𝑦 < (𝑀 · 𝑁))) → (𝑦 mod (𝑀 · 𝑁)) = 𝑦)
6860, 62, 64, 66, 67syl22anc 1319 . . . . . . . 8 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝑦 mod (𝑀 · 𝑁)) = 𝑦)
6949zred 11358 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑧 ∈ ℝ)
70 elfzole1 12347 . . . . . . . . . 10 (𝑧 ∈ (0..^(𝑀 · 𝑁)) → 0 ≤ 𝑧)
7147, 70syl 17 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 0 ≤ 𝑧)
72 elfzolt2 12348 . . . . . . . . . 10 (𝑧 ∈ (0..^(𝑀 · 𝑁)) → 𝑧 < (𝑀 · 𝑁))
7347, 72syl 17 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → 𝑧 < (𝑀 · 𝑁))
74 modid 12557 . . . . . . . . 9 (((𝑧 ∈ ℝ ∧ (𝑀 · 𝑁) ∈ ℝ+) ∧ (0 ≤ 𝑧𝑧 < (𝑀 · 𝑁))) → (𝑧 mod (𝑀 · 𝑁)) = 𝑧)
7569, 62, 71, 73, 74syl22anc 1319 . . . . . . . 8 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝑧 mod (𝑀 · 𝑁)) = 𝑧)
7668, 75eqeq12d 2625 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝑦 mod (𝑀 · 𝑁)) = (𝑧 mod (𝑀 · 𝑁)) ↔ 𝑦 = 𝑧))
77 moddvds 14829 . . . . . . . 8 (((𝑀 · 𝑁) ∈ ℕ ∧ 𝑦 ∈ ℤ ∧ 𝑧 ∈ ℤ) → ((𝑦 mod (𝑀 · 𝑁)) = (𝑧 mod (𝑀 · 𝑁)) ↔ (𝑀 · 𝑁) ∥ (𝑦𝑧)))
7861, 45, 49, 77syl3anc 1318 . . . . . . 7 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝑦 mod (𝑀 · 𝑁)) = (𝑧 mod (𝑀 · 𝑁)) ↔ (𝑀 · 𝑁) ∥ (𝑦𝑧)))
7976, 78bitr3d 269 . . . . . 6 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (𝑦 = 𝑧 ↔ (𝑀 · 𝑁) ∥ (𝑦𝑧)))
8054, 59, 793imtr4d 282 . . . . 5 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → (((𝑦 mod 𝑀) = (𝑧 mod 𝑀) ∧ (𝑦 mod 𝑁) = (𝑧 mod 𝑁)) → 𝑦 = 𝑧))
8137, 80sylbid 229 . . . 4 ((𝜑 ∧ (𝑦𝑆𝑧𝑆)) → ((𝐹𝑦) = (𝐹𝑧) → 𝑦 = 𝑧))
8281ralrimivva 2954 . . 3 (𝜑 → ∀𝑦𝑆𝑧𝑆 ((𝐹𝑦) = (𝐹𝑧) → 𝑦 = 𝑧))
83 dff13 6416 . . 3 (𝐹:𝑆1-1𝑇 ↔ (𝐹:𝑆𝑇 ∧ ∀𝑦𝑆𝑧𝑆 ((𝐹𝑦) = (𝐹𝑧) → 𝑦 = 𝑧)))
8420, 82, 83sylanbrc 695 . 2 (𝜑𝐹:𝑆1-1𝑇)
85 nnnn0 11176 . . . . . 6 (𝑀 ∈ ℕ → 𝑀 ∈ ℕ0)
86 nnnn0 11176 . . . . . 6 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ0)
87 nn0mulcl 11206 . . . . . . . . 9 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 · 𝑁) ∈ ℕ0)
88 hashfzo0 13077 . . . . . . . . 9 ((𝑀 · 𝑁) ∈ ℕ0 → (#‘(0..^(𝑀 · 𝑁))) = (𝑀 · 𝑁))
8987, 88syl 17 . . . . . . . 8 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (#‘(0..^(𝑀 · 𝑁))) = (𝑀 · 𝑁))
90 fzofi 12635 . . . . . . . . . 10 (0..^𝑀) ∈ Fin
91 fzofi 12635 . . . . . . . . . 10 (0..^𝑁) ∈ Fin
92 hashxp 13081 . . . . . . . . . 10 (((0..^𝑀) ∈ Fin ∧ (0..^𝑁) ∈ Fin) → (#‘((0..^𝑀) × (0..^𝑁))) = ((#‘(0..^𝑀)) · (#‘(0..^𝑁))))
9390, 91, 92mp2an 704 . . . . . . . . 9 (#‘((0..^𝑀) × (0..^𝑁))) = ((#‘(0..^𝑀)) · (#‘(0..^𝑁)))
94 hashfzo0 13077 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → (#‘(0..^𝑀)) = 𝑀)
95 hashfzo0 13077 . . . . . . . . . 10 (𝑁 ∈ ℕ0 → (#‘(0..^𝑁)) = 𝑁)
9694, 95oveqan12d 6568 . . . . . . . . 9 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((#‘(0..^𝑀)) · (#‘(0..^𝑁))) = (𝑀 · 𝑁))
9793, 96syl5eq 2656 . . . . . . . 8 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (#‘((0..^𝑀) × (0..^𝑁))) = (𝑀 · 𝑁))
9889, 97eqtr4d 2647 . . . . . . 7 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (#‘(0..^(𝑀 · 𝑁))) = (#‘((0..^𝑀) × (0..^𝑁))))
99 fzofi 12635 . . . . . . . 8 (0..^(𝑀 · 𝑁)) ∈ Fin
100 xpfi 8116 . . . . . . . . 9 (((0..^𝑀) ∈ Fin ∧ (0..^𝑁) ∈ Fin) → ((0..^𝑀) × (0..^𝑁)) ∈ Fin)
10190, 91, 100mp2an 704 . . . . . . . 8 ((0..^𝑀) × (0..^𝑁)) ∈ Fin
102 hashen 12997 . . . . . . . 8 (((0..^(𝑀 · 𝑁)) ∈ Fin ∧ ((0..^𝑀) × (0..^𝑁)) ∈ Fin) → ((#‘(0..^(𝑀 · 𝑁))) = (#‘((0..^𝑀) × (0..^𝑁))) ↔ (0..^(𝑀 · 𝑁)) ≈ ((0..^𝑀) × (0..^𝑁))))
10399, 101, 102mp2an 704 . . . . . . 7 ((#‘(0..^(𝑀 · 𝑁))) = (#‘((0..^𝑀) × (0..^𝑁))) ↔ (0..^(𝑀 · 𝑁)) ≈ ((0..^𝑀) × (0..^𝑁)))
10498, 103sylib 207 . . . . . 6 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (0..^(𝑀 · 𝑁)) ≈ ((0..^𝑀) × (0..^𝑁)))
10585, 86, 104syl2an 493 . . . . 5 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (0..^(𝑀 · 𝑁)) ≈ ((0..^𝑀) × (0..^𝑁)))
1066, 10, 105syl2anc 691 . . . 4 (𝜑 → (0..^(𝑀 · 𝑁)) ≈ ((0..^𝑀) × (0..^𝑁)))
107106, 2, 163brtr4g 4617 . . 3 (𝜑𝑆𝑇)
10816, 101eqeltri 2684 . . 3 𝑇 ∈ Fin
109 f1finf1o 8072 . . 3 ((𝑆𝑇𝑇 ∈ Fin) → (𝐹:𝑆1-1𝑇𝐹:𝑆1-1-onto𝑇))
110107, 108, 109sylancl 693 . 2 (𝜑 → (𝐹:𝑆1-1𝑇𝐹:𝑆1-1-onto𝑇))
11184, 110mpbid 221 1 (𝜑𝐹:𝑆1-1-onto𝑇)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383  w3a 1031   = wceq 1475  wcel 1977  wral 2896  cop 4131   class class class wbr 4583  cmpt 4643   × cxp 5036  wf 5800  1-1wf1 5801  1-1-ontowf1o 5803  cfv 5804  (class class class)co 6549  cen 7838  Fincfn 7841  cr 9814  0cc0 9815  1c1 9816   · cmul 9820   < clt 9953  cle 9954  cmin 10145  cn 10897  0cn0 11169  cz 11254  +crp 11708  ..^cfzo 12334   mod cmo 12530  #chash 12979  cdvds 14821   gcd cgcd 15054
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-rep 4699  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847  ax-cnex 9871  ax-resscn 9872  ax-1cn 9873  ax-icn 9874  ax-addcl 9875  ax-addrcl 9876  ax-mulcl 9877  ax-mulrcl 9878  ax-mulcom 9879  ax-addass 9880  ax-mulass 9881  ax-distr 9882  ax-i2m1 9883  ax-1ne0 9884  ax-1rid 9885  ax-rnegex 9886  ax-rrecex 9887  ax-cnre 9888  ax-pre-lttri 9889  ax-pre-lttrn 9890  ax-pre-ltadd 9891  ax-pre-mulgt0 9892  ax-pre-sup 9893
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3or 1032  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-nel 2783  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-pss 3556  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-tp 4130  df-op 4132  df-uni 4373  df-int 4411  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-tr 4681  df-eprel 4949  df-id 4953  df-po 4959  df-so 4960  df-fr 4997  df-we 4999  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-pred 5597  df-ord 5643  df-on 5644  df-lim 5645  df-suc 5646  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-riota 6511  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-om 6958  df-1st 7059  df-2nd 7060  df-wrecs 7294  df-recs 7355  df-rdg 7393  df-1o 7447  df-oadd 7451  df-er 7629  df-map 7746  df-en 7842  df-dom 7843  df-sdom 7844  df-fin 7845  df-sup 8231  df-inf 8232  df-card 8648  df-cda 8873  df-pnf 9955  df-mnf 9956  df-xr 9957  df-ltxr 9958  df-le 9959  df-sub 10147  df-neg 10148  df-div 10564  df-nn 10898  df-2 10956  df-3 10957  df-n0 11170  df-z 11255  df-uz 11564  df-rp 11709  df-fz 12198  df-fzo 12335  df-fl 12455  df-mod 12531  df-seq 12664  df-exp 12723  df-hash 12980  df-cj 13687  df-re 13688  df-im 13689  df-sqrt 13823  df-abs 13824  df-dvds 14822  df-gcd 15055
This theorem is referenced by:  phimullem  15322
  Copyright terms: Public domain W3C validator