ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  modom GIF version

Theorem modom 7037
Description: Two ways to express "at most one". (Contributed by Stefan O'Rear, 28-Oct-2014.)
Assertion
Ref Expression
modom (∃*𝑥𝜑 ↔ {𝑥𝜑} ≼ 1o)

Proof of Theorem modom
Dummy variables 𝑢 𝑣 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 1oex 6633 . . 3 1o ∈ V
2 0lt1o 6651 . . . . 5 ∅ ∈ 1o
322a1i 27 . . . 4 (∃*𝑥𝜑 → (𝑢 ∈ {𝑥𝜑} → ∅ ∈ 1o))
4 eqidd 2232 . . . . . 6 ((∃*𝑥𝜑 ∧ (𝑢 ∈ {𝑥𝜑} ∧ 𝑣 ∈ {𝑥𝜑})) → ∅ = ∅)
5 df-clab 2218 . . . . . . . . 9 (𝑢 ∈ {𝑥𝜑} ↔ [𝑢 / 𝑥]𝜑)
6 df-clab 2218 . . . . . . . . 9 (𝑣 ∈ {𝑥𝜑} ↔ [𝑣 / 𝑥]𝜑)
75, 6anbi12i 460 . . . . . . . 8 ((𝑢 ∈ {𝑥𝜑} ∧ 𝑣 ∈ {𝑥𝜑}) ↔ ([𝑢 / 𝑥]𝜑 ∧ [𝑣 / 𝑥]𝜑))
8 nfv 1577 . . . . . . . . . . 11 𝑦𝜑
98mo3 2134 . . . . . . . . . 10 (∃*𝑥𝜑 ↔ ∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
10 nfcv 2375 . . . . . . . . . . . 12 𝑥𝑢
11 nfs1v 1992 . . . . . . . . . . . . . . 15 𝑥[𝑢 / 𝑥]𝜑
12 nfs1v 1992 . . . . . . . . . . . . . . 15 𝑥[𝑦 / 𝑥]𝜑
1311, 12nfan 1614 . . . . . . . . . . . . . 14 𝑥([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑)
14 nfv 1577 . . . . . . . . . . . . . 14 𝑥 𝑢 = 𝑦
1513, 14nfim 1621 . . . . . . . . . . . . 13 𝑥(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦)
1615nfal 1625 . . . . . . . . . . . 12 𝑥𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦)
17 sbequ12 1819 . . . . . . . . . . . . . . 15 (𝑥 = 𝑢 → (𝜑 ↔ [𝑢 / 𝑥]𝜑))
1817anbi1d 465 . . . . . . . . . . . . . 14 (𝑥 = 𝑢 → ((𝜑 ∧ [𝑦 / 𝑥]𝜑) ↔ ([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑)))
19 equequ1 1760 . . . . . . . . . . . . . 14 (𝑥 = 𝑢 → (𝑥 = 𝑦𝑢 = 𝑦))
2018, 19imbi12d 234 . . . . . . . . . . . . 13 (𝑥 = 𝑢 → (((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) ↔ (([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦)))
2120albidv 1872 . . . . . . . . . . . 12 (𝑥 = 𝑢 → (∀𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) ↔ ∀𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦)))
2210, 16, 21spcgf 2889 . . . . . . . . . . 11 (𝑢 ∈ V → (∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → ∀𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦)))
2322elv 2807 . . . . . . . . . 10 (∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦) → ∀𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦))
249, 23sylbi 121 . . . . . . . . 9 (∃*𝑥𝜑 → ∀𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦))
25 nfcv 2375 . . . . . . . . . . 11 𝑦𝑣
26 nfv 1577 . . . . . . . . . . 11 𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑣 / 𝑥]𝜑) → 𝑢 = 𝑣)
27 sbequ 1888 . . . . . . . . . . . . 13 (𝑦 = 𝑣 → ([𝑦 / 𝑥]𝜑 ↔ [𝑣 / 𝑥]𝜑))
2827anbi2d 464 . . . . . . . . . . . 12 (𝑦 = 𝑣 → (([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) ↔ ([𝑢 / 𝑥]𝜑 ∧ [𝑣 / 𝑥]𝜑)))
29 equequ2 1761 . . . . . . . . . . . 12 (𝑦 = 𝑣 → (𝑢 = 𝑦𝑢 = 𝑣))
3028, 29imbi12d 234 . . . . . . . . . . 11 (𝑦 = 𝑣 → ((([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦) ↔ (([𝑢 / 𝑥]𝜑 ∧ [𝑣 / 𝑥]𝜑) → 𝑢 = 𝑣)))
3125, 26, 30spcgf 2889 . . . . . . . . . 10 (𝑣 ∈ V → (∀𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦) → (([𝑢 / 𝑥]𝜑 ∧ [𝑣 / 𝑥]𝜑) → 𝑢 = 𝑣)))
3231elv 2807 . . . . . . . . 9 (∀𝑦(([𝑢 / 𝑥]𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑢 = 𝑦) → (([𝑢 / 𝑥]𝜑 ∧ [𝑣 / 𝑥]𝜑) → 𝑢 = 𝑣))
3324, 32syl 14 . . . . . . . 8 (∃*𝑥𝜑 → (([𝑢 / 𝑥]𝜑 ∧ [𝑣 / 𝑥]𝜑) → 𝑢 = 𝑣))
347, 33biimtrid 152 . . . . . . 7 (∃*𝑥𝜑 → ((𝑢 ∈ {𝑥𝜑} ∧ 𝑣 ∈ {𝑥𝜑}) → 𝑢 = 𝑣))
3534imp 124 . . . . . 6 ((∃*𝑥𝜑 ∧ (𝑢 ∈ {𝑥𝜑} ∧ 𝑣 ∈ {𝑥𝜑})) → 𝑢 = 𝑣)
364, 352thd 175 . . . . 5 ((∃*𝑥𝜑 ∧ (𝑢 ∈ {𝑥𝜑} ∧ 𝑣 ∈ {𝑥𝜑})) → (∅ = ∅ ↔ 𝑢 = 𝑣))
3736ex 115 . . . 4 (∃*𝑥𝜑 → ((𝑢 ∈ {𝑥𝜑} ∧ 𝑣 ∈ {𝑥𝜑}) → (∅ = ∅ ↔ 𝑢 = 𝑣)))
383, 37dom2d 6989 . . 3 (∃*𝑥𝜑 → (1o ∈ V → {𝑥𝜑} ≼ 1o))
391, 38mpi 15 . 2 (∃*𝑥𝜑 → {𝑥𝜑} ≼ 1o)
40 nfab1 2377 . . . . 5 𝑥{𝑥𝜑}
41 nfcv 2375 . . . . 5 𝑥
42 nfcv 2375 . . . . 5 𝑥1o
4340, 41, 42nfbr 4140 . . . 4 𝑥{𝑥𝜑} ≼ 1o
44 simpl 109 . . . . . . 7 (({𝑥𝜑} ≼ 1o ∧ (𝜑 ∧ [𝑦 / 𝑥]𝜑)) → {𝑥𝜑} ≼ 1o)
45 abid 2219 . . . . . . . . 9 (𝑥 ∈ {𝑥𝜑} ↔ 𝜑)
4645biimpri 133 . . . . . . . 8 (𝜑𝑥 ∈ {𝑥𝜑})
4746ad2antrl 490 . . . . . . 7 (({𝑥𝜑} ≼ 1o ∧ (𝜑 ∧ [𝑦 / 𝑥]𝜑)) → 𝑥 ∈ {𝑥𝜑})
48 df-clab 2218 . . . . . . . . 9 (𝑦 ∈ {𝑥𝜑} ↔ [𝑦 / 𝑥]𝜑)
4948biimpri 133 . . . . . . . 8 ([𝑦 / 𝑥]𝜑𝑦 ∈ {𝑥𝜑})
5049ad2antll 491 . . . . . . 7 (({𝑥𝜑} ≼ 1o ∧ (𝜑 ∧ [𝑦 / 𝑥]𝜑)) → 𝑦 ∈ {𝑥𝜑})
51 1dom1el 7036 . . . . . . 7 (({𝑥𝜑} ≼ 1o𝑥 ∈ {𝑥𝜑} ∧ 𝑦 ∈ {𝑥𝜑}) → 𝑥 = 𝑦)
5244, 47, 50, 51syl3anc 1274 . . . . . 6 (({𝑥𝜑} ≼ 1o ∧ (𝜑 ∧ [𝑦 / 𝑥]𝜑)) → 𝑥 = 𝑦)
5352ex 115 . . . . 5 ({𝑥𝜑} ≼ 1o → ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
5453alrimiv 1922 . . . 4 ({𝑥𝜑} ≼ 1o → ∀𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
5543, 54alrimi 1571 . . 3 ({𝑥𝜑} ≼ 1o → ∀𝑥𝑦((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))
5655, 9sylibr 134 . 2 ({𝑥𝜑} ≼ 1o → ∃*𝑥𝜑)
5739, 56impbii 126 1 (∃*𝑥𝜑 ↔ {𝑥𝜑} ≼ 1o)
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  wb 105  wal 1396   = wceq 1398  [wsb 1810  ∃*wmo 2080  wcel 2202  {cab 2217  Vcvv 2803  c0 3496   class class class wbr 4093  1oc1o 6618  cdom 6951
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-13 2204  ax-14 2205  ax-ext 2213  ax-coll 4209  ax-sep 4212  ax-nul 4220  ax-pow 4270  ax-pr 4305  ax-un 4536
This theorem depends on definitions:  df-bi 117  df-3an 1007  df-tru 1401  df-nf 1510  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2364  df-ral 2516  df-rex 2517  df-reu 2518  df-rab 2520  df-v 2805  df-sbc 3033  df-csb 3129  df-dif 3203  df-un 3205  df-in 3207  df-ss 3214  df-nul 3497  df-pw 3658  df-sn 3679  df-pr 3680  df-op 3682  df-uni 3899  df-iun 3977  df-br 4094  df-opab 4156  df-mpt 4157  df-tr 4193  df-id 4396  df-iord 4469  df-on 4471  df-suc 4474  df-xp 4737  df-rel 4738  df-cnv 4739  df-co 4740  df-dm 4741  df-rn 4742  df-res 4743  df-ima 4744  df-iota 5293  df-fun 5335  df-fn 5336  df-f 5337  df-f1 5338  df-fo 5339  df-f1o 5340  df-fv 5341  df-1o 6625  df-dom 6954
This theorem is referenced by:  modom2  7038
  Copyright terms: Public domain W3C validator