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

Theorem ssttrcl 9605
Description: If 𝑅 is a relation, then it is a subclass of its transitive closure. (Contributed by Scott Fenton, 17-Oct-2024.)
Assertion
Ref Expression
ssttrcl (Rel 𝑅𝑅 ⊆ t++𝑅)

Proof of Theorem ssttrcl
Dummy variables 𝑥 𝑦 𝑓 𝑛 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 1onn 8555 . . . . . 6 1o ∈ ω
2 1on 8397 . . . . . . 7 1o ∈ On
32onirri 6420 . . . . . 6 ¬ 1o ∈ 1o
4 eldif 3907 . . . . . 6 (1o ∈ (ω ∖ 1o) ↔ (1o ∈ ω ∧ ¬ 1o ∈ 1o))
51, 3, 4mpbir2an 711 . . . . 5 1o ∈ (ω ∖ 1o)
6 vex 3440 . . . . . . . 8 𝑥 ∈ V
7 vex 3440 . . . . . . . 8 𝑦 ∈ V
86, 7ifex 4523 . . . . . . 7 if(𝑚 = ∅, 𝑥, 𝑦) ∈ V
9 eqid 2731 . . . . . . 7 (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))
108, 9fnmpti 6624 . . . . . 6 (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o
11 eqid 2731 . . . . . . 7 𝑥 = 𝑥
12 eqid 2731 . . . . . . 7 𝑦 = 𝑦
1311, 12pm3.2i 470 . . . . . 6 (𝑥 = 𝑥𝑦 = 𝑦)
14 1oex 8395 . . . . . . . . 9 1o ∈ V
1514sucex 7739 . . . . . . . 8 suc 1o ∈ V
1615mptex 7157 . . . . . . 7 (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) ∈ V
17 fneq1 6572 . . . . . . . 8 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓 Fn suc 1o ↔ (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o))
18 fveq1 6821 . . . . . . . . . . 11 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘∅) = ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘∅))
192onordi 6419 . . . . . . . . . . . . 13 Ord 1o
20 0elsuc 7765 . . . . . . . . . . . . 13 (Ord 1o → ∅ ∈ suc 1o)
2119, 20ax-mp 5 . . . . . . . . . . . 12 ∅ ∈ suc 1o
22 iftrue 4478 . . . . . . . . . . . . 13 (𝑚 = ∅ → if(𝑚 = ∅, 𝑥, 𝑦) = 𝑥)
2322, 9, 6fvmpt 6929 . . . . . . . . . . . 12 (∅ ∈ suc 1o → ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘∅) = 𝑥)
2421, 23ax-mp 5 . . . . . . . . . . 11 ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘∅) = 𝑥
2518, 24eqtrdi 2782 . . . . . . . . . 10 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘∅) = 𝑥)
2625eqeq1d 2733 . . . . . . . . 9 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓‘∅) = 𝑥𝑥 = 𝑥))
27 fveq1 6821 . . . . . . . . . . 11 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘1o) = ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o))
2814sucid 6390 . . . . . . . . . . . . 13 1o ∈ suc 1o
29 eqeq1 2735 . . . . . . . . . . . . . . 15 (𝑚 = 1o → (𝑚 = ∅ ↔ 1o = ∅))
3029ifbid 4496 . . . . . . . . . . . . . 14 (𝑚 = 1o → if(𝑚 = ∅, 𝑥, 𝑦) = if(1o = ∅, 𝑥, 𝑦))
31 1n0 8403 . . . . . . . . . . . . . . . . 17 1o ≠ ∅
3231neii 2930 . . . . . . . . . . . . . . . 16 ¬ 1o = ∅
3332iffalsei 4482 . . . . . . . . . . . . . . 15 if(1o = ∅, 𝑥, 𝑦) = 𝑦
3433, 7eqeltri 2827 . . . . . . . . . . . . . 14 if(1o = ∅, 𝑥, 𝑦) ∈ V
3530, 9, 34fvmpt 6929 . . . . . . . . . . . . 13 (1o ∈ suc 1o → ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o) = if(1o = ∅, 𝑥, 𝑦))
3628, 35ax-mp 5 . . . . . . . . . . . 12 ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o) = if(1o = ∅, 𝑥, 𝑦)
3736, 33eqtri 2754 . . . . . . . . . . 11 ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o) = 𝑦
3827, 37eqtrdi 2782 . . . . . . . . . 10 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘1o) = 𝑦)
3938eqeq1d 2733 . . . . . . . . 9 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓‘1o) = 𝑦𝑦 = 𝑦))
4026, 39anbi12d 632 . . . . . . . 8 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ↔ (𝑥 = 𝑥𝑦 = 𝑦)))
4125, 38breq12d 5102 . . . . . . . 8 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓‘∅)𝑅(𝑓‘1o) ↔ 𝑥𝑅𝑦))
4217, 40, 413anbi123d 1438 . . . . . . 7 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o)) ↔ ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o ∧ (𝑥 = 𝑥𝑦 = 𝑦) ∧ 𝑥𝑅𝑦)))
4316, 42spcev 3556 . . . . . 6 (((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o ∧ (𝑥 = 𝑥𝑦 = 𝑦) ∧ 𝑥𝑅𝑦) → ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o)))
4410, 13, 43mp3an12 1453 . . . . 5 (𝑥𝑅𝑦 → ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o)))
45 suceq 6374 . . . . . . . . 9 (𝑛 = 1o → suc 𝑛 = suc 1o)
4645fneq2d 6575 . . . . . . . 8 (𝑛 = 1o → (𝑓 Fn suc 𝑛𝑓 Fn suc 1o))
47 fveqeq2 6831 . . . . . . . . 9 (𝑛 = 1o → ((𝑓𝑛) = 𝑦 ↔ (𝑓‘1o) = 𝑦))
4847anbi2d 630 . . . . . . . 8 (𝑛 = 1o → (((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ↔ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦)))
49 raleq 3289 . . . . . . . . 9 (𝑛 = 1o → (∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ ∀𝑚 ∈ 1o (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
50 df1o2 8392 . . . . . . . . . . 11 1o = {∅}
5150raleqi 3290 . . . . . . . . . 10 (∀𝑚 ∈ 1o (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ ∀𝑚 ∈ {∅} (𝑓𝑚)𝑅(𝑓‘suc 𝑚))
52 0ex 5243 . . . . . . . . . . 11 ∅ ∈ V
53 fveq2 6822 . . . . . . . . . . . 12 (𝑚 = ∅ → (𝑓𝑚) = (𝑓‘∅))
54 suceq 6374 . . . . . . . . . . . . . 14 (𝑚 = ∅ → suc 𝑚 = suc ∅)
55 df-1o 8385 . . . . . . . . . . . . . 14 1o = suc ∅
5654, 55eqtr4di 2784 . . . . . . . . . . . . 13 (𝑚 = ∅ → suc 𝑚 = 1o)
5756fveq2d 6826 . . . . . . . . . . . 12 (𝑚 = ∅ → (𝑓‘suc 𝑚) = (𝑓‘1o))
5853, 57breq12d 5102 . . . . . . . . . . 11 (𝑚 = ∅ → ((𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o)))
5952, 58ralsn 4631 . . . . . . . . . 10 (∀𝑚 ∈ {∅} (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o))
6051, 59bitri 275 . . . . . . . . 9 (∀𝑚 ∈ 1o (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o))
6149, 60bitrdi 287 . . . . . . . 8 (𝑛 = 1o → (∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o)))
6246, 48, 613anbi123d 1438 . . . . . . 7 (𝑛 = 1o → ((𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)) ↔ (𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o))))
6362exbidv 1922 . . . . . 6 (𝑛 = 1o → (∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)) ↔ ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o))))
6463rspcev 3572 . . . . 5 ((1o ∈ (ω ∖ 1o) ∧ ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o))) → ∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
655, 44, 64sylancr 587 . . . 4 (𝑥𝑅𝑦 → ∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
66 df-br 5090 . . . 4 (𝑥𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅)
67 brttrcl 9603 . . . . 5 (𝑥t++𝑅𝑦 ↔ ∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
68 df-br 5090 . . . . 5 (𝑥t++𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
6967, 68bitr3i 277 . . . 4 (∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)) ↔ ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
7065, 66, 693imtr3i 291 . . 3 (⟨𝑥, 𝑦⟩ ∈ 𝑅 → ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
7170gen2 1797 . 2 𝑥𝑦(⟨𝑥, 𝑦⟩ ∈ 𝑅 → ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
72 ssrel 5722 . 2 (Rel 𝑅 → (𝑅 ⊆ t++𝑅 ↔ ∀𝑥𝑦(⟨𝑥, 𝑦⟩ ∈ 𝑅 → ⟨𝑥, 𝑦⟩ ∈ t++𝑅)))
7371, 72mpbiri 258 1 (Rel 𝑅𝑅 ⊆ t++𝑅)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 395  w3a 1086  wal 1539   = wceq 1541  wex 1780  wcel 2111  wral 3047  wrex 3056  Vcvv 3436  cdif 3894  wss 3897  c0 4280  ifcif 4472  {csn 4573  cop 4579   class class class wbr 5089  cmpt 5170  Rel wrel 5619  Ord word 6305  suc csuc 6308   Fn wfn 6476  cfv 6481  ωcom 7796  1oc1o 8378  t++cttrcl 9597
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 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703  ax-rep 5215  ax-sep 5232  ax-nul 5242  ax-pr 5368  ax-un 7668
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-nfc 2881  df-ne 2929  df-ral 3048  df-rex 3057  df-reu 3347  df-rab 3396  df-v 3438  df-sbc 3737  df-csb 3846  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-pss 3917  df-nul 4281  df-if 4473  df-pw 4549  df-sn 4574  df-pr 4576  df-op 4580  df-uni 4857  df-iun 4941  df-br 5090  df-opab 5152  df-mpt 5171  df-tr 5197  df-id 5509  df-eprel 5514  df-po 5522  df-so 5523  df-fr 5567  df-we 5569  df-xp 5620  df-rel 5621  df-cnv 5622  df-co 5623  df-dm 5624  df-rn 5625  df-res 5626  df-ima 5627  df-ord 6309  df-on 6310  df-lim 6311  df-suc 6312  df-iota 6437  df-fun 6483  df-fn 6484  df-f 6485  df-f1 6486  df-fo 6487  df-f1o 6488  df-fv 6489  df-om 7797  df-1o 8385  df-ttrcl 9598
This theorem is referenced by:  ttrclco  9608  cottrcl  9609  dmttrcl  9611  rnttrcl  9612  dfttrcl2  9614  frmin  9642  frrlem16  9651  frr1  9652
  Copyright terms: Public domain W3C validator