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

Theorem hashmap 14548
Description: The size of the set exponential of two finite sets is the exponential of their sizes. (This is the original motivation behind the notation for set exponentiation.) (Contributed by Mario Carneiro, 5-Aug-2014.) (Proof shortened by AV, 18-Jul-2022.)
Assertion
Ref Expression
hashmap ((𝐴 ∈ Fin ∧ 𝐵 ∈ Fin) → (♯‘(𝐴 ↑m 𝐵)) = ((♯‘𝐴)↑(♯‘𝐵)))

Proof of Theorem hashmap
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 oveq2 7416 . . . . . 6 (𝑥 = ∅ → (𝐴 ↑m 𝑥) = (𝐴 ↑m ∅))
21fveq2d 6877 . . . . 5 (𝑥 = ∅ → (♯‘(𝐴 ↑m 𝑥)) = (♯‘(𝐴 ↑m ∅)))
3 fveq2 6873 . . . . . 6 (𝑥 = ∅ → (♯‘𝑥) = (♯‘∅))
43oveq2d 7424 . . . . 5 (𝑥 = ∅ → ((♯‘𝐴)↑(♯‘𝑥)) = ((♯‘𝐴)↑(♯‘∅)))
52, 4eqeq12d 2776 . . . 4 (𝑥 = ∅ → ((♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥)) ↔ (♯‘(𝐴 ↑m ∅)) = ((♯‘𝐴)↑(♯‘∅))))
65imbi2d 343 . . 3 (𝑥 = ∅ → ((𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥))) ↔ (𝐴 ∈ Fin → (♯‘(𝐴 ↑m ∅)) = ((♯‘𝐴)↑(♯‘∅)))))
7 oveq2 7416 . . . . . 6 (𝑥 = 𝑦 → (𝐴 ↑m 𝑥) = (𝐴 ↑m 𝑦))
87fveq2d 6877 . . . . 5 (𝑥 = 𝑦 → (♯‘(𝐴 ↑m 𝑥)) = (♯‘(𝐴 ↑m 𝑦)))
9 fveq2 6873 . . . . . 6 (𝑥 = 𝑦 → (♯‘𝑥) = (♯‘𝑦))
109oveq2d 7424 . . . . 5 (𝑥 = 𝑦 → ((♯‘𝐴)↑(♯‘𝑥)) = ((♯‘𝐴)↑(♯‘𝑦)))
118, 10eqeq12d 2776 . . . 4 (𝑥 = 𝑦 → ((♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥)) ↔ (♯‘(𝐴 ↑m 𝑦)) = ((♯‘𝐴)↑(♯‘𝑦))))
1211imbi2d 343 . . 3 (𝑥 = 𝑦 → ((𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥))) ↔ (𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝑦)) = ((♯‘𝐴)↑(♯‘𝑦)))))
13 oveq2 7416 . . . . . 6 (𝑥 = (𝑦 ∪ {𝑧}) → (𝐴 ↑m 𝑥) = (𝐴 ↑m (𝑦 ∪ {𝑧})))
1413fveq2d 6877 . . . . 5 (𝑥 = (𝑦 ∪ {𝑧}) → (♯‘(𝐴 ↑m 𝑥)) = (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))))
15 fveq2 6873 . . . . . 6 (𝑥 = (𝑦 ∪ {𝑧}) → (♯‘𝑥) = (♯‘(𝑦 ∪ {𝑧})))
1615oveq2d 7424 . . . . 5 (𝑥 = (𝑦 ∪ {𝑧}) → ((♯‘𝐴)↑(♯‘𝑥)) = ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧}))))
1714, 16eqeq12d 2776 . . . 4 (𝑥 = (𝑦 ∪ {𝑧}) → ((♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥)) ↔ (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧})))))
1817imbi2d 343 . . 3 (𝑥 = (𝑦 ∪ {𝑧}) → ((𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥))) ↔ (𝐴 ∈ Fin → (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧}))))))
19 oveq2 7416 . . . . . 6 (𝑥 = 𝐵 → (𝐴 ↑m 𝑥) = (𝐴 ↑m 𝐵))
2019fveq2d 6877 . . . . 5 (𝑥 = 𝐵 → (♯‘(𝐴 ↑m 𝑥)) = (♯‘(𝐴 ↑m 𝐵)))
21 fveq2 6873 . . . . . 6 (𝑥 = 𝐵 → (♯‘𝑥) = (♯‘𝐵))
2221oveq2d 7424 . . . . 5 (𝑥 = 𝐵 → ((♯‘𝐴)↑(♯‘𝑥)) = ((♯‘𝐴)↑(♯‘𝐵)))
2320, 22eqeq12d 2776 . . . 4 (𝑥 = 𝐵 → ((♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥)) ↔ (♯‘(𝐴 ↑m 𝐵)) = ((♯‘𝐴)↑(♯‘𝐵))))
2423imbi2d 343 . . 3 (𝑥 = 𝐵 → ((𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝑥)) = ((♯‘𝐴)↑(♯‘𝑥))) ↔ (𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝐵)) = ((♯‘𝐴)↑(♯‘𝐵)))))
25 hashcl 14468 . . . . . 6 (𝐴 ∈ Fin → (♯‘𝐴) ∈ ℕ0)
2625nn0cnd 12639 . . . . 5 (𝐴 ∈ Fin → (♯‘𝐴) ∈ ℂ)
2726exp0d 14252 . . . 4 (𝐴 ∈ Fin → ((♯‘𝐴)↑0) = 1)
28 hash0 14479 . . . . . 6 (♯‘∅) = 0
2928oveq2i 7419 . . . . 5 ((♯‘𝐴)↑(♯‘∅)) = ((♯‘𝐴)↑0)
3029a1i 11 . . . 4 (𝐴 ∈ Fin → ((♯‘𝐴)↑(♯‘∅)) = ((♯‘𝐴)↑0))
31 mapdm0 8840 . . . . . 6 (𝐴 ∈ Fin → (𝐴 ↑m ∅) = {∅})
3231fveq2d 6877 . . . . 5 (𝐴 ∈ Fin → (♯‘(𝐴 ↑m ∅)) = (♯‘{∅}))
33 0ex 5260 . . . . . 6 ∅ ∈ V
34 hashsng 14481 . . . . . 6 (∅ ∈ V → (♯‘{∅}) = 1)
3533, 34mp1i 14 . . . . 5 (𝐴 ∈ Fin → (♯‘{∅}) = 1)
3632, 35eqtrd 2795 . . . 4 (𝐴 ∈ Fin → (♯‘(𝐴 ↑m ∅)) = 1)
3727, 30, 363eqtr4rd 2806 . . 3 (𝐴 ∈ Fin → (♯‘(𝐴 ↑m ∅)) = ((♯‘𝐴)↑(♯‘∅)))
38 oveq1 7415 . . . . . 6 ((♯‘(𝐴 ↑m 𝑦)) = ((♯‘𝐴)↑(♯‘𝑦)) → ((♯‘(𝐴 ↑m 𝑦)) · (♯‘𝐴)) = (((♯‘𝐴)↑(♯‘𝑦)) · (♯‘𝐴)))
39 vex 3454 . . . . . . . . . . 11 𝑦 ∈ V
4039a1i 11 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → 𝑦 ∈ V)
41 vsnex 5392 . . . . . . . . . . 11 {𝑧} ∈ V
4241a1i 11 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → {𝑧} ∈ V)
43 elex 3471 . . . . . . . . . . 11 (𝐴 ∈ Fin → 𝐴 ∈ V)
4443adantr 486 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → 𝐴 ∈ V)
45 simprr 785 . . . . . . . . . . 11 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ¬ 𝑧 ∈ 𝑦)
46 disjsn 4671 . . . . . . . . . . 11 ((𝑦 ∩ {𝑧}) = ∅ ↔ ¬ 𝑧 ∈ 𝑦)
4745, 46sylibr 237 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (𝑦 ∩ {𝑧}) = ∅)
48 mapunen 9143 . . . . . . . . . 10 (((𝑦 ∈ V ∧ {𝑧} ∈ V ∧ 𝐴 ∈ V) ∧ (𝑦 ∩ {𝑧}) = ∅) → (𝐴 ↑m (𝑦 ∪ {𝑧})) ≈ ((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧})))
4940, 42, 44, 47, 48syl31anc 1400 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (𝐴 ↑m (𝑦 ∪ {𝑧})) ≈ ((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧})))
50 simpl 488 . . . . . . . . . . 11 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → 𝐴 ∈ Fin)
51 simprl 783 . . . . . . . . . . . 12 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → 𝑦 ∈ Fin)
52 snfi 9049 . . . . . . . . . . . 12 {𝑧} ∈ Fin
53 unfi 9164 . . . . . . . . . . . 12 ((𝑦 ∈ Fin ∧ {𝑧} ∈ Fin) → (𝑦 ∪ {𝑧}) ∈ Fin)
5451, 52, 53sylancl 598 . . . . . . . . . . 11 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (𝑦 ∪ {𝑧}) ∈ Fin)
55 mapfi 9315 . . . . . . . . . . 11 ((𝐴 ∈ Fin ∧ (𝑦 ∪ {𝑧}) ∈ Fin) → (𝐴 ↑m (𝑦 ∪ {𝑧})) ∈ Fin)
5650, 54, 55syl2anc 596 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (𝐴 ↑m (𝑦 ∪ {𝑧})) ∈ Fin)
57 mapfi 9315 . . . . . . . . . . . 12 ((𝐴 ∈ Fin ∧ 𝑦 ∈ Fin) → (𝐴 ↑m 𝑦) ∈ Fin)
5857adantrr 730 . . . . . . . . . . 11 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (𝐴 ↑m 𝑦) ∈ Fin)
59 mapfi 9315 . . . . . . . . . . . 12 ((𝐴 ∈ Fin ∧ {𝑧} ∈ Fin) → (𝐴 ↑m {𝑧}) ∈ Fin)
6050, 52, 59sylancl 598 . . . . . . . . . . 11 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (𝐴 ↑m {𝑧}) ∈ Fin)
61 xpfi 9289 . . . . . . . . . . 11 (((𝐴 ↑m 𝑦) ∈ Fin ∧ (𝐴 ↑m {𝑧}) ∈ Fin) → ((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧})) ∈ Fin)
6258, 60, 61syl2anc 596 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧})) ∈ Fin)
63 hashen 14459 . . . . . . . . . 10 (((𝐴 ↑m (𝑦 ∪ {𝑧})) ∈ Fin ∧ ((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧})) ∈ Fin) → ((♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = (♯‘((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧}))) ↔ (𝐴 ↑m (𝑦 ∪ {𝑧})) ≈ ((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧}))))
6456, 62, 63syl2anc 596 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = (♯‘((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧}))) ↔ (𝐴 ↑m (𝑦 ∪ {𝑧})) ≈ ((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧}))))
6549, 64mpbird 260 . . . . . . . 8 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = (♯‘((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧}))))
66 hashxp 14547 . . . . . . . . 9 (((𝐴 ↑m 𝑦) ∈ Fin ∧ (𝐴 ↑m {𝑧}) ∈ Fin) → (♯‘((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧}))) = ((♯‘(𝐴 ↑m 𝑦)) · (♯‘(𝐴 ↑m {𝑧}))))
6758, 60, 66syl2anc 596 . . . . . . . 8 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (♯‘((𝐴 ↑m 𝑦) × (𝐴 ↑m {𝑧}))) = ((♯‘(𝐴 ↑m 𝑦)) · (♯‘(𝐴 ↑m {𝑧}))))
68 vex 3454 . . . . . . . . . . . 12 𝑧 ∈ V
6968a1i 11 . . . . . . . . . . 11 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → 𝑧 ∈ V)
7050, 69mapsnend 9042 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (𝐴 ↑m {𝑧}) ≈ 𝐴)
71 hashen 14459 . . . . . . . . . . 11 (((𝐴 ↑m {𝑧}) ∈ Fin ∧ 𝐴 ∈ Fin) → ((♯‘(𝐴 ↑m {𝑧})) = (♯‘𝐴) ↔ (𝐴 ↑m {𝑧}) ≈ 𝐴))
7260, 50, 71syl2anc 596 . . . . . . . . . 10 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘(𝐴 ↑m {𝑧})) = (♯‘𝐴) ↔ (𝐴 ↑m {𝑧}) ≈ 𝐴))
7370, 72mpbird 260 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (♯‘(𝐴 ↑m {𝑧})) = (♯‘𝐴))
7473oveq2d 7424 . . . . . . . 8 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘(𝐴 ↑m 𝑦)) · (♯‘(𝐴 ↑m {𝑧}))) = ((♯‘(𝐴 ↑m 𝑦)) · (♯‘𝐴)))
7565, 67, 743eqtrd 2799 . . . . . . 7 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = ((♯‘(𝐴 ↑m 𝑦)) · (♯‘𝐴)))
76 hashunsng 14504 . . . . . . . . . . 11 (𝑧 ∈ V → ((𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦) → (♯‘(𝑦 ∪ {𝑧})) = ((♯‘𝑦) + 1)))
7776elv 3455 . . . . . . . . . 10 ((𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦) → (♯‘(𝑦 ∪ {𝑧})) = ((♯‘𝑦) + 1))
7877adantl 487 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (♯‘(𝑦 ∪ {𝑧})) = ((♯‘𝑦) + 1))
7978oveq2d 7424 . . . . . . . 8 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧}))) = ((♯‘𝐴)↑((♯‘𝑦) + 1)))
8026adantr 486 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (♯‘𝐴) ∈ ℂ)
81 hashcl 14468 . . . . . . . . . 10 (𝑦 ∈ Fin → (♯‘𝑦) ∈ ℕ0)
8281ad2antrl 741 . . . . . . . . 9 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → (♯‘𝑦) ∈ ℕ0)
8380, 82expp1d 14259 . . . . . . . 8 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘𝐴)↑((♯‘𝑦) + 1)) = (((♯‘𝐴)↑(♯‘𝑦)) · (♯‘𝐴)))
8479, 83eqtrd 2795 . . . . . . 7 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧}))) = (((♯‘𝐴)↑(♯‘𝑦)) · (♯‘𝐴)))
8575, 84eqeq12d 2776 . . . . . 6 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧}))) ↔ ((♯‘(𝐴 ↑m 𝑦)) · (♯‘𝐴)) = (((♯‘𝐴)↑(♯‘𝑦)) · (♯‘𝐴))))
8638, 85imbitrrid 249 . . . . 5 ((𝐴 ∈ Fin ∧ (𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦)) → ((♯‘(𝐴 ↑m 𝑦)) = ((♯‘𝐴)↑(♯‘𝑦)) → (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧})))))
8786expcom 419 . . . 4 ((𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦) → (𝐴 ∈ Fin → ((♯‘(𝐴 ↑m 𝑦)) = ((♯‘𝐴)↑(♯‘𝑦)) → (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧}))))))
8887a2d 30 . . 3 ((𝑦 ∈ Fin ∧ ¬ 𝑧 ∈ 𝑦) → ((𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝑦)) = ((♯‘𝐴)↑(♯‘𝑦))) → (𝐴 ∈ Fin → (♯‘(𝐴 ↑m (𝑦 ∪ {𝑧}))) = ((♯‘𝐴)↑(♯‘(𝑦 ∪ {𝑧}))))))
896, 12, 18, 24, 37, 88findcard2s 9159 . 2 (𝐵 ∈ Fin → (𝐴 ∈ Fin → (♯‘(𝐴 ↑m 𝐵)) = ((♯‘𝐴)↑(♯‘𝐵))))
9089impcom 413 1 ((𝐴 ∈ Fin ∧ 𝐵 ∈ Fin) → (♯‘(𝐴 ↑m 𝐵)) = ((♯‘𝐴)↑(♯‘𝐵)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570   ∈ wcel 2145  Vcvv 3450   ∪ cun 3896   ∩ cin 3897  ∅c0 4278  {csn 4583   class class class wbr 5102   × cxp 5645  ‘cfv 6527  (class class class)co 7408   ↑m cmap 8825   ≈ cen 8948  Fincfn 8951  ℂcc 11170  0cc0 11172  1c1 11173   + caddc 11175   · cmul 11177  ℕ0cn0 12576  ↑cexp 14173  ♯chash 14442
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7734  ax-cnex 11228  ax-resscn 11229  ax-1cn 11230  ax-icn 11231  ax-addcl 11232  ax-addrcl 11233  ax-mulcl 11234  ax-mulrcl 11235  ax-mulcom 11236  ax-addass 11237  ax-mulass 11238  ax-distr 11239  ax-i2m1 11240  ax-1ne0 11241  ax-1rid 11242  ax-rnegex 11243  ax-rrecex 11244  ax-cnre 11245  ax-pre-lttri 11246  ax-pre-lttrn 11247  ax-pre-ltadd 11248  ax-pre-mulgt0 11249
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-int 4907  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6293  df-ord 6354  df-on 6355  df-lim 6356  df-suc 6357  df-iota 6483  df-fun 6529  df-fn 6530  df-f 6531  df-f1 6532  df-fo 6533  df-f1o 6534  df-fv 6535  df-riota 7365  df-ov 7411  df-oprab 7412  df-mpo 7413  df-om 7861  df-1st 7984  df-2nd 7985  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-1o 8454  df-oadd 8458  df-er 8695  df-map 8827  df-pm 8828  df-en 8952  df-dom 8953  df-sdom 8954  df-fin 8955  df-dju 9954  df-card 9992  df-pnf 11317  df-mnf 11318  df-xr 11319  df-ltxr 11320  df-le 11321  df-sub 11515  df-neg 11516  df-nn 12306  df-n0 12577  df-z 12664  df-uz 12936  df-fz 13610  df-seq 14114  df-exp 14174  df-hash 14443
This theorem is used by:  hashpw  14549  hashwrdn  14660  prmreclem2  17057  efmndhash  19034  birthdaylem2  27244
  Copyright terms: Public domain W3C validator