Users' Mathboxes Mathbox for Gino Giotto < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  ss-ax8 Structured version   Visualization version   GIF version

Theorem ss-ax8 36183
Description: A proof of ax-8 2110 that does not rely on ax-8 2110. It employs df-ss 3993 to perform alpha-renaming and eliminates disjoint variable conditions using ax-9 2118. Contrary to in-ax8 36182, this proof does not rely on df-cleq 2732, therefore using fewer axioms . This method should not be applied to eliminate axiom dependencies. (Contributed by GG, 30-Aug-2025.) (Proof modification is discouraged.) (New usage is discouraged.)
Assertion
Ref Expression
ss-ax8 (𝑥 = 𝑦 → (𝑥𝑧𝑦𝑧))

Proof of Theorem ss-ax8
Dummy variables 𝑡 𝑤 𝑣 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ax7 2015 . . . . . . 7 (𝑥 = 𝑦 → (𝑥 = 𝑤𝑦 = 𝑤))
2 ax12v2 2180 . . . . . . . . . . 11 (𝑥 = 𝑤 → (𝑥𝑡 → ∀𝑥(𝑥 = 𝑤𝑥𝑡)))
32imp 406 . . . . . . . . . 10 ((𝑥 = 𝑤𝑥𝑡) → ∀𝑥(𝑥 = 𝑤𝑥𝑡))
4 equsb3 2103 . . . . . . . . . . . . . . 15 ([𝑥 / 𝑣]𝑣 = 𝑤𝑥 = 𝑤)
54bicomi 224 . . . . . . . . . . . . . 14 (𝑥 = 𝑤 ↔ [𝑥 / 𝑣]𝑣 = 𝑤)
65imbi1i 349 . . . . . . . . . . . . 13 ((𝑥 = 𝑤𝑥𝑡) ↔ ([𝑥 / 𝑣]𝑣 = 𝑤𝑥𝑡))
76albii 1817 . . . . . . . . . . . 12 (∀𝑥(𝑥 = 𝑤𝑥𝑡) ↔ ∀𝑥([𝑥 / 𝑣]𝑣 = 𝑤𝑥𝑡))
8 df-clab 2718 . . . . . . . . . . . . . . . 16 (𝑥 ∈ {𝑣𝑣 = 𝑤} ↔ [𝑥 / 𝑣]𝑣 = 𝑤)
98bicomi 224 . . . . . . . . . . . . . . 15 ([𝑥 / 𝑣]𝑣 = 𝑤𝑥 ∈ {𝑣𝑣 = 𝑤})
109imbi1i 349 . . . . . . . . . . . . . 14 (([𝑥 / 𝑣]𝑣 = 𝑤𝑥𝑡) ↔ (𝑥 ∈ {𝑣𝑣 = 𝑤} → 𝑥𝑡))
1110albii 1817 . . . . . . . . . . . . 13 (∀𝑥([𝑥 / 𝑣]𝑣 = 𝑤𝑥𝑡) ↔ ∀𝑥(𝑥 ∈ {𝑣𝑣 = 𝑤} → 𝑥𝑡))
12 df-ss 3993 . . . . . . . . . . . . . 14 ({𝑣𝑣 = 𝑤} ⊆ 𝑡 ↔ ∀𝑥(𝑥 ∈ {𝑣𝑣 = 𝑤} → 𝑥𝑡))
13 df-ss 3993 . . . . . . . . . . . . . 14 ({𝑣𝑣 = 𝑤} ⊆ 𝑡 ↔ ∀𝑦(𝑦 ∈ {𝑣𝑣 = 𝑤} → 𝑦𝑡))
1412, 13bitr3i 277 . . . . . . . . . . . . 13 (∀𝑥(𝑥 ∈ {𝑣𝑣 = 𝑤} → 𝑥𝑡) ↔ ∀𝑦(𝑦 ∈ {𝑣𝑣 = 𝑤} → 𝑦𝑡))
15 df-clab 2718 . . . . . . . . . . . . . . 15 (𝑦 ∈ {𝑣𝑣 = 𝑤} ↔ [𝑦 / 𝑣]𝑣 = 𝑤)
1615imbi1i 349 . . . . . . . . . . . . . 14 ((𝑦 ∈ {𝑣𝑣 = 𝑤} → 𝑦𝑡) ↔ ([𝑦 / 𝑣]𝑣 = 𝑤𝑦𝑡))
1716albii 1817 . . . . . . . . . . . . 13 (∀𝑦(𝑦 ∈ {𝑣𝑣 = 𝑤} → 𝑦𝑡) ↔ ∀𝑦([𝑦 / 𝑣]𝑣 = 𝑤𝑦𝑡))
1811, 14, 173bitri 297 . . . . . . . . . . . 12 (∀𝑥([𝑥 / 𝑣]𝑣 = 𝑤𝑥𝑡) ↔ ∀𝑦([𝑦 / 𝑣]𝑣 = 𝑤𝑦𝑡))
19 equsb3 2103 . . . . . . . . . . . . . 14 ([𝑦 / 𝑣]𝑣 = 𝑤𝑦 = 𝑤)
2019imbi1i 349 . . . . . . . . . . . . 13 (([𝑦 / 𝑣]𝑣 = 𝑤𝑦𝑡) ↔ (𝑦 = 𝑤𝑦𝑡))
2120albii 1817 . . . . . . . . . . . 12 (∀𝑦([𝑦 / 𝑣]𝑣 = 𝑤𝑦𝑡) ↔ ∀𝑦(𝑦 = 𝑤𝑦𝑡))
227, 18, 213bitri 297 . . . . . . . . . . 11 (∀𝑥(𝑥 = 𝑤𝑥𝑡) ↔ ∀𝑦(𝑦 = 𝑤𝑦𝑡))
2322biimpi 216 . . . . . . . . . 10 (∀𝑥(𝑥 = 𝑤𝑥𝑡) → ∀𝑦(𝑦 = 𝑤𝑦𝑡))
24 sp 2184 . . . . . . . . . 10 (∀𝑦(𝑦 = 𝑤𝑦𝑡) → (𝑦 = 𝑤𝑦𝑡))
253, 23, 243syl 18 . . . . . . . . 9 ((𝑥 = 𝑤𝑥𝑡) → (𝑦 = 𝑤𝑦𝑡))
2625ex 412 . . . . . . . 8 (𝑥 = 𝑤 → (𝑥𝑡 → (𝑦 = 𝑤𝑦𝑡)))
2726com23 86 . . . . . . 7 (𝑥 = 𝑤 → (𝑦 = 𝑤 → (𝑥𝑡𝑦𝑡)))
281, 27sylcom 30 . . . . . 6 (𝑥 = 𝑦 → (𝑥 = 𝑤 → (𝑥𝑡𝑦𝑡)))
2928com12 32 . . . . 5 (𝑥 = 𝑤 → (𝑥 = 𝑦 → (𝑥𝑡𝑦𝑡)))
3029equcoms 2019 . . . 4 (𝑤 = 𝑥 → (𝑥 = 𝑦 → (𝑥𝑡𝑦𝑡)))
31 ax6ev 1969 . . . 4 𝑤 𝑤 = 𝑥
3230, 31exlimiiv 1930 . . 3 (𝑥 = 𝑦 → (𝑥𝑡𝑦𝑡))
33 ax9 2122 . . . . 5 (𝑧 = 𝑡 → (𝑥𝑧𝑥𝑡))
3433equcoms 2019 . . . 4 (𝑡 = 𝑧 → (𝑥𝑧𝑥𝑡))
35 ax9 2122 . . . 4 (𝑡 = 𝑧 → (𝑦𝑡𝑦𝑧))
3634, 35imim12d 81 . . 3 (𝑡 = 𝑧 → ((𝑥𝑡𝑦𝑡) → (𝑥𝑧𝑦𝑧)))
3732, 36syl5 34 . 2 (𝑡 = 𝑧 → (𝑥 = 𝑦 → (𝑥𝑧𝑦𝑧)))
38 ax6ev 1969 . 2 𝑡 𝑡 = 𝑧
3937, 38exlimiiv 1930 1 (𝑥 = 𝑦 → (𝑥𝑧𝑦𝑧))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  wal 1535  [wsb 2064  wcel 2108  {cab 2717  wss 3976
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1793  ax-4 1807  ax-5 1909  ax-6 1967  ax-7 2007  ax-9 2118  ax-12 2178
This theorem depends on definitions:  df-bi 207  df-an 396  df-ex 1778  df-sb 2065  df-clab 2718  df-ss 3993
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator