HOLE Home Higher-Order Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  HOLE Home  >  Th. List  >  axrep GIF version

Theorem axrep 220
Description: Axiom of Replacement. An axiom scheme of Zermelo-Fraenkel set theory. Axiom 5 of [TakeutiZaring] p. 19. (Contributed by Mario Carneiro, 10-Oct-2014.)
Hypotheses
Ref Expression
axrep.1 A:∗
axrep.2 B:(α → ∗)
Assertion
Ref Expression
axrep ⊤⊧[(λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]]))) ⇒ (λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]))]
Distinct variable groups:   y,B   α,y   x,y,β   y,z,β

Proof of Theorem axrep
Dummy variable f is distinct from all other variables.
StepHypRef Expression
1 wal 134 . . . . . . 7 :((α → ∗) → ∗)
2 wex 139 . . . . . . . . 9 :((β → ∗) → ∗)
3 wal 134 . . . . . . . . . . 11 :((β → ∗) → ∗)
4 wim 137 . . . . . . . . . . . . 13 ⇒ :(∗ → (∗ → ∗))
5 axrep.1 . . . . . . . . . . . . . . 15 A:∗
65wl 66 . . . . . . . . . . . . . 14 λy:β A:(β → ∗)
73, 6wc 50 . . . . . . . . . . . . 13 (λy:β A):∗
8 wv 64 . . . . . . . . . . . . . 14 z:β:β
9 wv 64 . . . . . . . . . . . . . 14 y:β:β
108, 9weqi 76 . . . . . . . . . . . . 13 [z:β = y:β]:∗
114, 7, 10wov 72 . . . . . . . . . . . 12 [(λy:β A) ⇒ [z:β = y:β]]:∗
1211wl 66 . . . . . . . . . . 11 λz:β [(λy:β A) ⇒ [z:β = y:β]]:(β → ∗)
133, 12wc 50 . . . . . . . . . 10 (λz:β [(λy:β A) ⇒ [z:β = y:β]]):∗
1413wl 66 . . . . . . . . 9 λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]]):(β → ∗)
152, 14wc 50 . . . . . . . 8 (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]])):∗
1615wl 66 . . . . . . 7 λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]])):(α → ∗)
171, 16wc 50 . . . . . 6 (λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]]))):∗
18 wtru 43 . . . . . . . 8 ⊤:∗
19 wex 139 . . . . . . . . 9 :((α → ∗) → ∗)
20 wan 136 . . . . . . . . . . 11 :(∗ → (∗ → ∗))
21 axrep.2 . . . . . . . . . . . 12 B:(α → ∗)
22 wv 64 . . . . . . . . . . . 12 x:α:α
2321, 22wc 50 . . . . . . . . . . 11 (Bx:α):∗
2420, 23, 7wov 72 . . . . . . . . . 10 [(Bx:α) (λy:β A)]:∗
2524wl 66 . . . . . . . . 9 λx:α [(Bx:α) (λy:β A)]:(α → ∗)
2619, 25wc 50 . . . . . . . 8 (λx:α [(Bx:α) (λy:β A)]):∗
2718, 26eqid 83 . . . . . . 7 ⊤⊧[(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]
2827alrimiv 151 . . . . . 6 ⊤⊧(λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])])
2917, 28a1i 28 . . . . 5 (λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]])))⊧(λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])])
3029ax-cb1 29 . . . . . 6 (λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]]))):∗
31 wv 64 . . . . . . . . . . 11 y:(β → ∗):(β → ∗)
3231, 8wc 50 . . . . . . . . . 10 (y:(β → ∗)z:β):∗
3332, 26weqi 76 . . . . . . . . 9 [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]:∗
3433wl 66 . . . . . . . 8 λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]:(β → ∗)
353, 34wc 50 . . . . . . 7 (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]):∗
3626wl 66 . . . . . . 7 λz:β (λx:α [(Bx:α) (λy:β A)]):(β → ∗)
37 weq 41 . . . . . . . . . 10 = :(∗ → (∗ → ∗))
3831, 36weqi 76 . . . . . . . . . . . . 13 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]:∗
3938id 25 . . . . . . . . . . . 12 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]⊧[y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]
4031, 8, 39ceq1 89 . . . . . . . . . . 11 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]⊧[(y:(β → ∗)z:β) = (λz:β (λx:α [(Bx:α) (λy:β A)])z:β)]
4126beta 92 . . . . . . . . . . . 12 ⊤⊧[(λz:β (λx:α [(Bx:α) (λy:β A)])z:β) = (λx:α [(Bx:α) (λy:β A)])]
4238, 41a1i 28 . . . . . . . . . . 11 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]⊧[(λz:β (λx:α [(Bx:α) (λy:β A)])z:β) = (λx:α [(Bx:α) (λy:β A)])]
4332, 40, 42eqtri 95 . . . . . . . . . 10 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]⊧[(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]
4437, 32, 26, 43oveq1 99 . . . . . . . . 9 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]⊧[[(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])] = [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]]
45 weq 41 . . . . . . . . . 10 = :((β → ∗) → ((β → ∗) → ∗))
46 wv 64 . . . . . . . . . 10 f:β:β
4737, 46ax-17 105 . . . . . . . . . 10 ⊤⊧[(λz:β = f:β) = = ]
4831, 46ax-17 105 . . . . . . . . . 10 ⊤⊧[(λz:β y:(β → ∗)f:β) = y:(β → ∗)]
4926, 46ax-hbl1 103 . . . . . . . . . 10 ⊤⊧[(λz:β λz:β (λx:α [(Bx:α) (λy:β A)])f:β) = λz:β (λx:α [(Bx:α) (λy:β A)])]
5045, 31, 46, 36, 47, 48, 49hbov 111 . . . . . . . . 9 ⊤⊧[(λz:β [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]f:β) = [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]]
5133, 44, 50leqf 181 . . . . . . . 8 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]⊧[λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])] = λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]]
523, 34, 51ceq2 90 . . . . . . 7 [y:(β → ∗) = λz:β (λx:α [(Bx:α) (λy:β A)])]⊧[(λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]) = (λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])])]
5326, 26weqi 76 . . . . . . . . 9 [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]:∗
5453wl 66 . . . . . . . 8 λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]:(β → ∗)
55 wv 64 . . . . . . . 8 f:(β → ∗):(β → ∗)
563, 55ax-17 105 . . . . . . . 8 ⊤⊧[(λy:(β → ∗) f:(β → ∗)) = ]
57 weq 41 . . . . . . . . . . 11 = :(γ → (γ → ∗))
5857, 55ax-17 105 . . . . . . . . . 10 ⊤⊧[(λy:(β → ∗) = f:(β → ∗)) = = ]
592, 55ax-17 105 . . . . . . . . . . 11 ⊤⊧[(λy:(β → ∗) f:(β → ∗)) = ]
6020, 55ax-17 105 . . . . . . . . . . . . 13 ⊤⊧[(λy:(β → ∗) f:(β → ∗)) = ]
6123, 55ax-17 105 . . . . . . . . . . . . 13 ⊤⊧[(λy:(β → ∗) (Bx:α)f:(β → ∗)) = (Bx:α)]
625, 55, 18hbl1 104 . . . . . . . . . . . . . 14 ⊤⊧[(λy:(β → ∗) λy:β Af:(β → ∗)) = λy:β A]
633, 6, 55, 56, 62hbc 110 . . . . . . . . . . . . 13 ⊤⊧[(λy:(β → ∗) (λy:β A)f:(β → ∗)) = (λy:β A)]
6420, 23, 55, 7, 60, 61, 63hbov 111 . . . . . . . . . . . 12 ⊤⊧[(λy:(β → ∗) [(Bx:α) (λy:β A)]f:(β → ∗)) = [(Bx:α) (λy:β A)]]
6524, 55, 64hbl 112 . . . . . . . . . . 11 ⊤⊧[(λy:(β → ∗) λx:α [(Bx:α) (λy:β A)]f:(β → ∗)) = λx:α [(Bx:α) (λy:β A)]]
6619, 25, 55, 59, 65hbc 110 . . . . . . . . . 10 ⊤⊧[(λy:(β → ∗) (λx:α [(Bx:α) (λy:β A)])f:(β → ∗)) = (λx:α [(Bx:α) (λy:β A)])]
6737, 26, 55, 26, 58, 66, 66hbov 111 . . . . . . . . 9 ⊤⊧[(λy:(β → ∗) [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]f:(β → ∗)) = [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]]
6853, 55, 67hbl 112 . . . . . . . 8 ⊤⊧[(λy:(β → ∗) λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]f:(β → ∗)) = λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])]]
693, 54, 55, 56, 68hbc 110 . . . . . . 7 ⊤⊧[(λy:(β → ∗) (λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])])f:(β → ∗)) = (λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])])]
7026, 55, 66hbl 112 . . . . . . 7 ⊤⊧[(λy:(β → ∗) λz:β (λx:α [(Bx:α) (λy:β A)])f:(β → ∗)) = λz:β (λx:α [(Bx:α) (λy:β A)])]
7135, 36, 52, 69, 70clf 115 . . . . . 6 ⊤⊧[(λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])])λz:β (λx:α [(Bx:α) (λy:β A)])) = (λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])])]
7230, 71a1i 28 . . . . 5 (λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]])))⊧[(λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])])λz:β (λx:α [(Bx:α) (λy:β A)])) = (λz:β [(λx:α [(Bx:α) (λy:β A)]) = (λx:α [(Bx:α) (λy:β A)])])]
7329, 72mpbir 87 . . . 4 (λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]])))⊧(λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])])λz:β (λx:α [(Bx:α) (λy:β A)]))
7435wl 66 . . . . 5 λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]):((β → ∗) → ∗)
7574, 36ax4e 168 . . . 4 (λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])])λz:β (λx:α [(Bx:α) (λy:β A)]))⊧(λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]))
7673, 75syl 16 . . 3 (λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]])))⊧(λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]))
7776, 18adantl 56 . 2 (⊤, (λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]]))))⊧(λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]))
7877ex 158 1 ⊤⊧[(λx:α (λy:β (λz:β [(λy:β A) ⇒ [z:β = y:β]]))) ⇒ (λy:(β → ∗) (λz:β [(y:(β → ∗)z:β) = (λx:α [(Bx:α) (λy:β A)])]))]
Colors of variables: type var term
Syntax hints:  tv 1  ht 2  hb 3  kc 5  λkl 6   = ke 7  kt 8  [kbr 9  wffMMJ2 11  wffMMJ2t 12   tan 119  tim 121  tal 122  tex 123
This theorem was proved from axioms:  ax-syl 15  ax-jca 17  ax-simpl 20  ax-simpr 21  ax-id 24  ax-trud 26  ax-cb1 29  ax-cb2 30  ax-wctl 31  ax-wctr 32  ax-weq 40  ax-refl 42  ax-eqmp 45  ax-ded 46  ax-wct 47  ax-wc 49  ax-ceq 51  ax-wv 63  ax-wl 65  ax-beta 67  ax-distrc 68  ax-leq 69  ax-distrl 70  ax-wov 71  ax-eqtypi 77  ax-eqtypri 80  ax-hbl1 103  ax-17 105  ax-inst 113  ax-eta 177
This theorem depends on definitions:  df-ov 73  df-al 126  df-an 128  df-im 129  df-ex 131
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator