Users' Mathboxes Mathbox for BJ < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  bj-axseprep Structured version   Visualization version   GIF version

Theorem bj-axseprep 37806
Description: Axiom of separation (universal closure of ax-sep 5255) from a weak form of the axiom of replacement requiring that the functional relation in it be a (total) function and the weak emptyset axiom (existence of an empty set provided existence of a set), as written in the theorem's hypotheses.

This result shows that the weak emptyset axiom is not only the result of a cheap way to avoid an axiom redundancy (in this case, the existence axiom extru 2008) by adding it as an antecedent, but also permits to prove nontrivial results that hold in nonnecessarily nonempty universes.

This proof is by cases so is not intuitionistic. The statement does not require a nonempty universe; most of the proof does not either, and the parts that do (e.g., near sb8ef 2386 and sbequ12r 2289 and eueq2 3671) could be reworked to avoid it. Proof modifications should not introduce steps relying on a nonempty universe, like alrimiv 1960. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.)

Hypotheses
Ref Expression
bj-axseprep.axnulw (∃𝑥⊤ → ∃𝑦𝑧𝑦 ⊥)
bj-axseprep.axrep 𝑥(∀𝑧𝑥 ∃!𝑡𝜓 → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 𝜓))
bj-axseprep.ps (𝜓 ↔ ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
Assertion
Ref Expression
bj-axseprep 𝑥𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))
Distinct variable groups:   𝑡,𝑎,𝑥,𝑦,𝑧   𝜑,𝑎,𝑡,𝑥,𝑦
Allowed substitution hints:   𝜑(𝑧)   𝜓(𝑥, 𝑦, 𝑧, 𝑡, 𝑎)

Proof of Theorem bj-axseprep
StepHypRef Expression
1 ax5e 1945 . . . 4 (∃𝑎𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)))
21ax-gen 1828 . . 3 𝑥(∃𝑎𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)))
3 bj-eximcom 37334 . . . . 5 (∃𝑎(∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))) → (∀𝑎𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑎𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
4 bj-axseprep.axrep . . . . . . . . 9 𝑥(∀𝑧𝑥 ∃!𝑡𝜓 → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 𝜓))
5 bj-axseprep.ps . . . . . . . . . . . . 13 (𝜓 ↔ ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
65eubii 2612 . . . . . . . . . . . 12 (∃!𝑡𝜓 ↔ ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
76ralbii 3110 . . . . . . . . . . 11 (∀𝑧𝑥 ∃!𝑡𝜓 ↔ ∀𝑧𝑥 ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
85rexbii 3111 . . . . . . . . . . . . . 14 (∃𝑧𝑥 𝜓 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
98bibi2i 340 . . . . . . . . . . . . 13 ((𝑡𝑦 ↔ ∃𝑧𝑥 𝜓) ↔ (𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))))
109albii 1852 . . . . . . . . . . . 12 (∀𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 𝜓) ↔ ∀𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))))
1110exbii 1881 . . . . . . . . . . 11 (∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 𝜓) ↔ ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))))
127, 11imbi12i 353 . . . . . . . . . 10 ((∀𝑧𝑥 ∃!𝑡𝜓 → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 𝜓)) ↔ (∀𝑧𝑥 ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)) → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))))
1312albii 1852 . . . . . . . . 9 (∀𝑥(∀𝑧𝑥 ∃!𝑡𝜓 → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 𝜓)) ↔ ∀𝑥(∀𝑧𝑥 ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)) → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))))
144, 13mpbi 233 . . . . . . . 8 𝑥(∀𝑧𝑥 ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)) → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))))
15 vex 3457 . . . . . . . . . . 11 𝑧 ∈ V
16 vex 3457 . . . . . . . . . . 11 𝑎 ∈ V
1715, 16eueq2 3671 . . . . . . . . . 10 ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))
1817rgenw 3082 . . . . . . . . 9 𝑧𝑥 ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))
1918ax-gen 1828 . . . . . . . 8 𝑥𝑧𝑥 ∃!𝑡((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))
2014, 19bj-almp 37299 . . . . . . 7 𝑥𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
2120ax-gen 1828 . . . . . 6 𝑎𝑥𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
22 alcom 2196 . . . . . 6 (∀𝑎𝑥𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) ↔ ∀𝑥𝑎𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))))
2321, 22mpbi 233 . . . . 5 𝑥𝑎𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))
243, 23bj-almpig 37308 . . . 4 𝑥(∃𝑎(∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))) → ∃𝑎𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)))
25 df-rex 3089 . . . . . . 7 (∃𝑧𝑥 𝜑 ↔ ∃𝑧(𝑧𝑥𝜑))
26 nfv 1947 . . . . . . . 8 𝑎(𝑧𝑥𝜑)
2726sb8ef 2386 . . . . . . 7 (∃𝑧(𝑧𝑥𝜑) ↔ ∃𝑎[𝑎 / 𝑧](𝑧𝑥𝜑))
2825, 27bitri 278 . . . . . 6 (∃𝑧𝑥 𝜑 ↔ ∃𝑎[𝑎 / 𝑧](𝑧𝑥𝜑))
29 df-rex 3089 . . . . . . . . . . . . . 14 (∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)) ↔ ∃𝑧(𝑧𝑥 ∧ ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))))
30 andi 1025 . . . . . . . . . . . . . . 15 ((𝑧𝑥 ∧ ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) ↔ ((𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ (𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))))
3130exbii 1881 . . . . . . . . . . . . . 14 (∃𝑧(𝑧𝑥 ∧ ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) ↔ ∃𝑧((𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ (𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))))
32 19.43 1915 . . . . . . . . . . . . . 14 (∃𝑧((𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ (𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))) ↔ (∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ ∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))))
3329, 31, 323bitri 300 . . . . . . . . . . . . 13 (∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)) ↔ (∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ ∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))))
34 equcom 2051 . . . . . . . . . . . . . . . . . . . 20 (𝑧 = 𝑡𝑡 = 𝑧)
3534anbi1i 636 . . . . . . . . . . . . . . . . . . 19 ((𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)) ↔ (𝑡 = 𝑧 ∧ (𝑧𝑥𝜑)))
36 ancom 466 . . . . . . . . . . . . . . . . . . 19 ((𝑡 = 𝑧 ∧ (𝑧𝑥𝜑)) ↔ ((𝑧𝑥𝜑) ∧ 𝑡 = 𝑧))
37 anass 474 . . . . . . . . . . . . . . . . . . 19 (((𝑧𝑥𝜑) ∧ 𝑡 = 𝑧) ↔ (𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)))
3835, 36, 373bitri 300 . . . . . . . . . . . . . . . . . 18 ((𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)) ↔ (𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)))
3938exbii 1881 . . . . . . . . . . . . . . . . 17 (∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)) ↔ ∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)))
4039biimpri 231 . . . . . . . . . . . . . . . 16 (∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) → ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)))
4140a1i 11 . . . . . . . . . . . . . . 15 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) → ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))))
42 simprr 785 . . . . . . . . . . . . . . . . 17 ((𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎)) → 𝑡 = 𝑎)
4342exlimiv 1963 . . . . . . . . . . . . . . . 16 (∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎)) → 𝑡 = 𝑎)
44 sbequ 2120 . . . . . . . . . . . . . . . . . . . 20 (𝑎 = 𝑡 → ([𝑎 / 𝑧](𝑧𝑥𝜑) ↔ [𝑡 / 𝑧](𝑧𝑥𝜑)))
4544biimpd 232 . . . . . . . . . . . . . . . . . . 19 (𝑎 = 𝑡 → ([𝑎 / 𝑧](𝑧𝑥𝜑) → [𝑡 / 𝑧](𝑧𝑥𝜑)))
4645equcoms 2053 . . . . . . . . . . . . . . . . . 18 (𝑡 = 𝑎 → ([𝑎 / 𝑧](𝑧𝑥𝜑) → [𝑡 / 𝑧](𝑧𝑥𝜑)))
4746com12 33 . . . . . . . . . . . . . . . . 17 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (𝑡 = 𝑎 → [𝑡 / 𝑧](𝑧𝑥𝜑)))
48 sb5 2311 . . . . . . . . . . . . . . . . 17 ([𝑡 / 𝑧](𝑧𝑥𝜑) ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)))
4947, 48imbitrdi 254 . . . . . . . . . . . . . . . 16 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (𝑡 = 𝑎 → ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))))
5043, 49syl5 35 . . . . . . . . . . . . . . 15 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎)) → ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))))
5141, 50jaod 873 . . . . . . . . . . . . . 14 ([𝑎 / 𝑧](𝑧𝑥𝜑) → ((∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ ∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))))
52 orc 881 . . . . . . . . . . . . . . 15 (∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) → (∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ ∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))))
5339, 52sylbi 220 . . . . . . . . . . . . . 14 (∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)) → (∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ ∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))))
5451, 53impbid1 228 . . . . . . . . . . . . 13 ([𝑎 / 𝑧](𝑧𝑥𝜑) → ((∃𝑧(𝑧𝑥 ∧ (𝜑𝑡 = 𝑧)) ∨ ∃𝑧(𝑧𝑥 ∧ (¬ 𝜑𝑡 = 𝑎))) ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))))
5533, 54bitrid 286 . . . . . . . . . . . 12 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)) ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))))
5655bibi2d 345 . . . . . . . . . . 11 ([𝑎 / 𝑧](𝑧𝑥𝜑) → ((𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) ↔ (𝑡𝑦 ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)))))
5756biimpd 232 . . . . . . . . . 10 ([𝑎 / 𝑧](𝑧𝑥𝜑) → ((𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → (𝑡𝑦 ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)))))
5857alimdv 1949 . . . . . . . . 9 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (∀𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∀𝑡(𝑡𝑦 ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)))))
59 nfv 1947 . . . . . . . . . . 11 𝑧 𝑡𝑦
60 nfe1 2187 . . . . . . . . . . 11 𝑧𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))
6159, 60nfbi 1936 . . . . . . . . . 10 𝑧(𝑡𝑦 ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)))
62 nfv 1947 . . . . . . . . . 10 𝑡(𝑧𝑦 ↔ (𝑧𝑥𝜑))
63 elequ1 2152 . . . . . . . . . . 11 (𝑡 = 𝑧 → (𝑡𝑦𝑧𝑦))
6448bicomi 227 . . . . . . . . . . . 12 (∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)) ↔ [𝑡 / 𝑧](𝑧𝑥𝜑))
65 sbequ12r 2289 . . . . . . . . . . . 12 (𝑡 = 𝑧 → ([𝑡 / 𝑧](𝑧𝑥𝜑) ↔ (𝑧𝑥𝜑)))
6664, 65bitrid 286 . . . . . . . . . . 11 (𝑡 = 𝑧 → (∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑)) ↔ (𝑧𝑥𝜑)))
6763, 66bibi12d 348 . . . . . . . . . 10 (𝑡 = 𝑧 → ((𝑡𝑦 ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))) ↔ (𝑧𝑦 ↔ (𝑧𝑥𝜑))))
6861, 62, 67cbvalv1 2372 . . . . . . . . 9 (∀𝑡(𝑡𝑦 ↔ ∃𝑧(𝑧 = 𝑡 ∧ (𝑧𝑥𝜑))) ↔ ∀𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)))
6958, 68imbitrdi 254 . . . . . . . 8 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (∀𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∀𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
7069eximdv 1950 . . . . . . 7 ([𝑎 / 𝑧](𝑧𝑥𝜑) → (∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
7170eximi 1868 . . . . . 6 (∃𝑎[𝑎 / 𝑧](𝑧𝑥𝜑) → ∃𝑎(∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
7228, 71sylbi 220 . . . . 5 (∃𝑧𝑥 𝜑 → ∃𝑎(∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
7372ax-gen 1828 . . . 4 𝑥(∃𝑧𝑥 𝜑 → ∃𝑎(∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎))) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
7424, 73barbara 2689 . . 3 𝑥(∃𝑧𝑥 𝜑 → ∃𝑎𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)))
752, 74barbara 2689 . 2 𝑥(∃𝑧𝑥 𝜑 → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)))
76 ralnex 3090 . . . . 5 (∀𝑧𝑥 ¬ 𝜑 ↔ ¬ ∃𝑧𝑥 𝜑)
77 df-ral 3079 . . . . . 6 (∀𝑧𝑥 ¬ 𝜑 ↔ ∀𝑧(𝑧𝑥 → ¬ 𝜑))
78 df-ral 3079 . . . . . . 7 (∀𝑧𝑦 ⊥ ↔ ∀𝑧(𝑧𝑦 → ⊥))
79 dfnot 1589 . . . . . . . . . . 11 𝑧𝑦 ↔ (𝑧𝑦 → ⊥))
8079bicomi 227 . . . . . . . . . 10 ((𝑧𝑦 → ⊥) ↔ ¬ 𝑧𝑦)
81 imnan 405 . . . . . . . . . 10 ((𝑧𝑥 → ¬ 𝜑) ↔ ¬ (𝑧𝑥𝜑))
82 pm5.21 837 . . . . . . . . . 10 ((¬ 𝑧𝑦 ∧ ¬ (𝑧𝑥𝜑)) → (𝑧𝑦 ↔ (𝑧𝑥𝜑)))
8380, 81, 82syl2anb 610 . . . . . . . . 9 (((𝑧𝑦 → ⊥) ∧ (𝑧𝑥 → ¬ 𝜑)) → (𝑧𝑦 ↔ (𝑧𝑥𝜑)))
8483expcom 419 . . . . . . . 8 ((𝑧𝑥 → ¬ 𝜑) → ((𝑧𝑦 → ⊥) → (𝑧𝑦 ↔ (𝑧𝑥𝜑))))
8584al2imi 1848 . . . . . . 7 (∀𝑧(𝑧𝑥 → ¬ 𝜑) → (∀𝑧(𝑧𝑦 → ⊥) → ∀𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
8678, 85biimtrid 245 . . . . . 6 (∀𝑧(𝑧𝑥 → ¬ 𝜑) → (∀𝑧𝑦 ⊥ → ∀𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
8777, 86sylbi 220 . . . . 5 (∀𝑧𝑥 ¬ 𝜑 → (∀𝑧𝑦 ⊥ → ∀𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
8876, 87sylbir 238 . . . 4 (¬ ∃𝑧𝑥 𝜑 → (∀𝑧𝑦 ⊥ → ∀𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
8988eximdv 1950 . . 3 (¬ ∃𝑧𝑥 𝜑 → (∃𝑦𝑧𝑦 ⊥ → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
90 bj-axseprep.axnulw . . . 4 (∃𝑥⊤ → ∃𝑦𝑧𝑦 ⊥)
91 bj-alextruim 37354 . . . 4 (∀𝑥𝑦𝑧𝑦 ⊥ ↔ (∃𝑥⊤ → ∃𝑦𝑧𝑦 ⊥))
9290, 91mpbir 234 . . 3 𝑥𝑦𝑧𝑦
9389, 92bj-almpig 37308 . 2 𝑥(¬ ∃𝑧𝑥 𝜑 → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑)))
94 pm2.61 194 . . 3 ((∃𝑧𝑥 𝜑 → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))) → ((¬ ∃𝑧𝑥 𝜑 → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))) → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
9594al2imi 1848 . 2 (∀𝑥(∃𝑧𝑥 𝜑 → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))) → (∀𝑥(¬ ∃𝑧𝑥 𝜑 → ∃𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))) → ∀𝑥𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))))
9675, 93, 95mp2 9 1 𝑥𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  wo 861  wal 1568   = wceq 1570  wtru 1571  wfal 1582  wex 1812  [wsb 2099  wcel 2145  ∃!weu 2595  wral 3078  wrex 3088
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 2215  ax-ext 2734
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-ral 3079  df-rex 3089  df-v 3455
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator