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

Theorem nfabdw 3000
Description: Bound-variable hypothesis builder for a class abstraction. Version of nfabd 3001 with a disjoint variable condition, which does not require ax-13 2390. (Contributed by Mario Carneiro, 8-Oct-2016.) (Revised by Gino Giotto, 10-Jan-2024.)
Hypotheses
Ref Expression
nfabdw.1 𝑦𝜑
nfabdw.2 (𝜑 → Ⅎ𝑥𝜓)
Assertion
Ref Expression
nfabdw (𝜑𝑥{𝑦𝜓})
Distinct variable group:   𝑥,𝑦
Allowed substitution hints:   𝜑(𝑥,𝑦)   𝜓(𝑥,𝑦)

Proof of Theorem nfabdw
Dummy variable 𝑧 is distinct from all other variables.
StepHypRef Expression
1 nfv 1915 . 2 𝑧𝜑
2 df-clab 2800 . . 3 (𝑧 ∈ {𝑦𝜓} ↔ [𝑧 / 𝑦]𝜓)
3 nfabdw.1 . . . . 5 𝑦𝜑
4 nfabdw.2 . . . . 5 (𝜑 → Ⅎ𝑥𝜓)
53, 4alrimi 2213 . . . 4 (𝜑 → ∀𝑦𝑥𝜓)
6 nfa1 2155 . . . . . . . . 9 𝑦𝑦𝑥𝜓
7 sb6 2093 . . . . . . . . . . . 12 ([𝑧 / 𝑦]𝜓 ↔ ∀𝑦(𝑦 = 𝑧𝜓))
87a1i 11 . . . . . . . . . . 11 (∀𝑦𝑥𝜓 → ([𝑧 / 𝑦]𝜓 ↔ ∀𝑦(𝑦 = 𝑧𝜓)))
97biimpri 230 . . . . . . . . . . . 12 (∀𝑦(𝑦 = 𝑧𝜓) → [𝑧 / 𝑦]𝜓)
109axc4i 2341 . . . . . . . . . . 11 (∀𝑦(𝑦 = 𝑧𝜓) → ∀𝑦[𝑧 / 𝑦]𝜓)
118, 10syl6bi 255 . . . . . . . . . 10 (∀𝑦𝑥𝜓 → ([𝑧 / 𝑦]𝜓 → ∀𝑦[𝑧 / 𝑦]𝜓))
126, 11nf5d 2292 . . . . . . . . 9 (∀𝑦𝑥𝜓 → Ⅎ𝑦[𝑧 / 𝑦]𝜓)
136, 12nfim1 2199 . . . . . . . 8 𝑦(∀𝑦𝑥𝜓 → [𝑧 / 𝑦]𝜓)
14 sbequ12 2253 . . . . . . . . 9 (𝑦 = 𝑧 → (𝜓 ↔ [𝑧 / 𝑦]𝜓))
1514imbi2d 343 . . . . . . . 8 (𝑦 = 𝑧 → ((∀𝑦𝑥𝜓𝜓) ↔ (∀𝑦𝑥𝜓 → [𝑧 / 𝑦]𝜓)))
1613, 15equsalv 2268 . . . . . . 7 (∀𝑦(𝑦 = 𝑧 → (∀𝑦𝑥𝜓𝜓)) ↔ (∀𝑦𝑥𝜓 → [𝑧 / 𝑦]𝜓))
1716bicomi 226 . . . . . 6 ((∀𝑦𝑥𝜓 → [𝑧 / 𝑦]𝜓) ↔ ∀𝑦(𝑦 = 𝑧 → (∀𝑦𝑥𝜓𝜓)))
18 nfv 1915 . . . . . . . 8 𝑥 𝑦 = 𝑧
19 nfnf1 2158 . . . . . . . . . 10 𝑥𝑥𝜓
2019nfal 2342 . . . . . . . . 9 𝑥𝑦𝑥𝜓
21 sp 2182 . . . . . . . . 9 (∀𝑦𝑥𝜓 → Ⅎ𝑥𝜓)
2220, 21nfim1 2199 . . . . . . . 8 𝑥(∀𝑦𝑥𝜓𝜓)
2318, 22nfim 1897 . . . . . . 7 𝑥(𝑦 = 𝑧 → (∀𝑦𝑥𝜓𝜓))
2423nfal 2342 . . . . . 6 𝑥𝑦(𝑦 = 𝑧 → (∀𝑦𝑥𝜓𝜓))
2517, 24nfxfr 1853 . . . . 5 𝑥(∀𝑦𝑥𝜓 → [𝑧 / 𝑦]𝜓)
26 pm5.5 364 . . . . . 6 (∀𝑦𝑥𝜓 → ((∀𝑦𝑥𝜓 → [𝑧 / 𝑦]𝜓) ↔ [𝑧 / 𝑦]𝜓))
2720, 26nfbidf 2226 . . . . 5 (∀𝑦𝑥𝜓 → (Ⅎ𝑥(∀𝑦𝑥𝜓 → [𝑧 / 𝑦]𝜓) ↔ Ⅎ𝑥[𝑧 / 𝑦]𝜓))
2825, 27mpbii 235 . . . 4 (∀𝑦𝑥𝜓 → Ⅎ𝑥[𝑧 / 𝑦]𝜓)
295, 28syl 17 . . 3 (𝜑 → Ⅎ𝑥[𝑧 / 𝑦]𝜓)
302, 29nfxfrd 1854 . 2 (𝜑 → Ⅎ𝑥 𝑧 ∈ {𝑦𝜓})
311, 30nfcd 2968 1 (𝜑𝑥{𝑦𝜓})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wal 1535  wnf 1784  [wsb 2069  wcel 2114  {cab 2799  wnfc 2961
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1970  ax-7 2015  ax-10 2145  ax-11 2161  ax-12 2177
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-ex 1781  df-nf 1785  df-sb 2070  df-clab 2800  df-nfc 2963
This theorem is referenced by:  nfrabw  3385  nfsbcdw  3793  nfcsb1d  3905  nfcsbw  3909  nfifd  4495  nfunid  4844  nfiotadw  6317  nfintd  44796  nfiund  44797
  Copyright terms: Public domain W3C validator