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

Theorem ssttrcl 9659
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 8590 . . . . . 6 1o ∈ ω
2 1on 8428 . . . . . . 7 1o ∈ On
32onirri 6434 . . . . . 6 ¬ 1o ∈ 1o
4 eldif 3924 . . . . . 6 (1o ∈ (ω ∖ 1o) ↔ (1o ∈ ω ∧ ¬ 1o ∈ 1o))
51, 3, 4mpbir2an 710 . . . . 5 1o ∈ (ω ∖ 1o)
6 vex 3451 . . . . . . . 8 𝑥 ∈ V
7 vex 3451 . . . . . . . 8 𝑦 ∈ V
86, 7ifex 4540 . . . . . . 7 if(𝑚 = ∅, 𝑥, 𝑦) ∈ V
9 eqid 2733 . . . . . . 7 (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))
108, 9fnmpti 6648 . . . . . 6 (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o
11 eqid 2733 . . . . . . 7 𝑥 = 𝑥
12 eqid 2733 . . . . . . 7 𝑦 = 𝑦
1311, 12pm3.2i 472 . . . . . 6 (𝑥 = 𝑥𝑦 = 𝑦)
14 1oex 8426 . . . . . . . . 9 1o ∈ V
1514sucex 7745 . . . . . . . 8 suc 1o ∈ V
1615mptex 7177 . . . . . . 7 (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) ∈ V
17 fneq1 6597 . . . . . . . 8 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓 Fn suc 1o ↔ (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o))
18 fveq1 6845 . . . . . . . . . . 11 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘∅) = ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘∅))
192onordi 6432 . . . . . . . . . . . . 13 Ord 1o
20 0elsuc 7774 . . . . . . . . . . . . 13 (Ord 1o → ∅ ∈ suc 1o)
2119, 20ax-mp 5 . . . . . . . . . . . 12 ∅ ∈ suc 1o
22 iftrue 4496 . . . . . . . . . . . . 13 (𝑚 = ∅ → if(𝑚 = ∅, 𝑥, 𝑦) = 𝑥)
2322, 9, 6fvmpt 6952 . . . . . . . . . . . 12 (∅ ∈ suc 1o → ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘∅) = 𝑥)
2421, 23ax-mp 5 . . . . . . . . . . 11 ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘∅) = 𝑥
2518, 24eqtrdi 2789 . . . . . . . . . 10 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘∅) = 𝑥)
2625eqeq1d 2735 . . . . . . . . 9 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓‘∅) = 𝑥𝑥 = 𝑥))
27 fveq1 6845 . . . . . . . . . . 11 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘1o) = ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o))
2814sucid 6403 . . . . . . . . . . . . 13 1o ∈ suc 1o
29 eqeq1 2737 . . . . . . . . . . . . . . 15 (𝑚 = 1o → (𝑚 = ∅ ↔ 1o = ∅))
3029ifbid 4513 . . . . . . . . . . . . . 14 (𝑚 = 1o → if(𝑚 = ∅, 𝑥, 𝑦) = if(1o = ∅, 𝑥, 𝑦))
31 1n0 8438 . . . . . . . . . . . . . . . . 17 1o ≠ ∅
3231neii 2942 . . . . . . . . . . . . . . . 16 ¬ 1o = ∅
3332iffalsei 4500 . . . . . . . . . . . . . . 15 if(1o = ∅, 𝑥, 𝑦) = 𝑦
3433, 7eqeltri 2830 . . . . . . . . . . . . . 14 if(1o = ∅, 𝑥, 𝑦) ∈ V
3530, 9, 34fvmpt 6952 . . . . . . . . . . . . 13 (1o ∈ suc 1o → ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o) = if(1o = ∅, 𝑥, 𝑦))
3628, 35ax-mp 5 . . . . . . . . . . . 12 ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o) = if(1o = ∅, 𝑥, 𝑦)
3736, 33eqtri 2761 . . . . . . . . . . 11 ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦))‘1o) = 𝑦
3827, 37eqtrdi 2789 . . . . . . . . . 10 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (𝑓‘1o) = 𝑦)
3938eqeq1d 2735 . . . . . . . . 9 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓‘1o) = 𝑦𝑦 = 𝑦))
4026, 39anbi12d 632 . . . . . . . 8 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → (((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ↔ (𝑥 = 𝑥𝑦 = 𝑦)))
4125, 38breq12d 5122 . . . . . . . 8 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓‘∅)𝑅(𝑓‘1o) ↔ 𝑥𝑅𝑦))
4217, 40, 413anbi123d 1437 . . . . . . 7 (𝑓 = (𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) → ((𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o)) ↔ ((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o ∧ (𝑥 = 𝑥𝑦 = 𝑦) ∧ 𝑥𝑅𝑦)))
4316, 42spcev 3567 . . . . . 6 (((𝑚 ∈ suc 1o ↦ if(𝑚 = ∅, 𝑥, 𝑦)) Fn suc 1o ∧ (𝑥 = 𝑥𝑦 = 𝑦) ∧ 𝑥𝑅𝑦) → ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o)))
4410, 13, 43mp3an12 1452 . . . . 5 (𝑥𝑅𝑦 → ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o)))
45 suceq 6387 . . . . . . . . 9 (𝑛 = 1o → suc 𝑛 = suc 1o)
4645fneq2d 6600 . . . . . . . 8 (𝑛 = 1o → (𝑓 Fn suc 𝑛𝑓 Fn suc 1o))
47 fveqeq2 6855 . . . . . . . . 9 (𝑛 = 1o → ((𝑓𝑛) = 𝑦 ↔ (𝑓‘1o) = 𝑦))
4847anbi2d 630 . . . . . . . 8 (𝑛 = 1o → (((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ↔ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦)))
49 raleq 3308 . . . . . . . . 9 (𝑛 = 1o → (∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ ∀𝑚 ∈ 1o (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
50 df1o2 8423 . . . . . . . . . . 11 1o = {∅}
5150raleqi 3310 . . . . . . . . . 10 (∀𝑚 ∈ 1o (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ ∀𝑚 ∈ {∅} (𝑓𝑚)𝑅(𝑓‘suc 𝑚))
52 0ex 5268 . . . . . . . . . . 11 ∅ ∈ V
53 fveq2 6846 . . . . . . . . . . . 12 (𝑚 = ∅ → (𝑓𝑚) = (𝑓‘∅))
54 suceq 6387 . . . . . . . . . . . . . 14 (𝑚 = ∅ → suc 𝑚 = suc ∅)
55 df-1o 8416 . . . . . . . . . . . . . 14 1o = suc ∅
5654, 55eqtr4di 2791 . . . . . . . . . . . . 13 (𝑚 = ∅ → suc 𝑚 = 1o)
5756fveq2d 6850 . . . . . . . . . . . 12 (𝑚 = ∅ → (𝑓‘suc 𝑚) = (𝑓‘1o))
5853, 57breq12d 5122 . . . . . . . . . . 11 (𝑚 = ∅ → ((𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o)))
5952, 58ralsn 4646 . . . . . . . . . 10 (∀𝑚 ∈ {∅} (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o))
6051, 59bitri 275 . . . . . . . . 9 (∀𝑚 ∈ 1o (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o))
6149, 60bitrdi 287 . . . . . . . 8 (𝑛 = 1o → (∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚) ↔ (𝑓‘∅)𝑅(𝑓‘1o)))
6246, 48, 613anbi123d 1437 . . . . . . 7 (𝑛 = 1o → ((𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)) ↔ (𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o))))
6362exbidv 1925 . . . . . 6 (𝑛 = 1o → (∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)) ↔ ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o))))
6463rspcev 3583 . . . . 5 ((1o ∈ (ω ∖ 1o) ∧ ∃𝑓(𝑓 Fn suc 1o ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓‘1o) = 𝑦) ∧ (𝑓‘∅)𝑅(𝑓‘1o))) → ∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
655, 44, 64sylancr 588 . . . 4 (𝑥𝑅𝑦 → ∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
66 df-br 5110 . . . 4 (𝑥𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅)
67 brttrcl 9657 . . . . 5 (𝑥t++𝑅𝑦 ↔ ∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)))
68 df-br 5110 . . . . 5 (𝑥t++𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
6967, 68bitr3i 277 . . . 4 (∃𝑛 ∈ (ω ∖ 1o)∃𝑓(𝑓 Fn suc 𝑛 ∧ ((𝑓‘∅) = 𝑥 ∧ (𝑓𝑛) = 𝑦) ∧ ∀𝑚𝑛 (𝑓𝑚)𝑅(𝑓‘suc 𝑚)) ↔ ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
7065, 66, 693imtr3i 291 . . 3 (⟨𝑥, 𝑦⟩ ∈ 𝑅 → ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
7170gen2 1799 . 2 𝑥𝑦(⟨𝑥, 𝑦⟩ ∈ 𝑅 → ⟨𝑥, 𝑦⟩ ∈ t++𝑅)
72 ssrel 5742 . 2 (Rel 𝑅 → (𝑅 ⊆ t++𝑅 ↔ ∀𝑥𝑦(⟨𝑥, 𝑦⟩ ∈ 𝑅 → ⟨𝑥, 𝑦⟩ ∈ t++𝑅)))
7371, 72mpbiri 258 1 (Rel 𝑅𝑅 ⊆ t++𝑅)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 397  w3a 1088  wal 1540   = wceq 1542  wex 1782  wcel 2107  wral 3061  wrex 3070  Vcvv 3447  cdif 3911  wss 3914  c0 4286  ifcif 4490  {csn 4590  cop 4596   class class class wbr 5109  cmpt 5192  Rel wrel 5642  Ord word 6320  suc csuc 6323   Fn wfn 6495  cfv 6500  ωcom 7806  1oc1o 8409  t++cttrcl 9651
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2704  ax-rep 5246  ax-sep 5260  ax-nul 5267  ax-pr 5388  ax-un 7676
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 847  df-3or 1089  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2535  df-eu 2564  df-clab 2711  df-cleq 2725  df-clel 2811  df-nfc 2886  df-ne 2941  df-ral 3062  df-rex 3071  df-reu 3353  df-rab 3407  df-v 3449  df-sbc 3744  df-csb 3860  df-dif 3917  df-un 3919  df-in 3921  df-ss 3931  df-pss 3933  df-nul 4287  df-if 4491  df-pw 4566  df-sn 4591  df-pr 4593  df-op 4597  df-uni 4870  df-iun 4960  df-br 5110  df-opab 5172  df-mpt 5193  df-tr 5227  df-id 5535  df-eprel 5541  df-po 5549  df-so 5550  df-fr 5592  df-we 5594  df-xp 5643  df-rel 5644  df-cnv 5645  df-co 5646  df-dm 5647  df-rn 5648  df-res 5649  df-ima 5650  df-ord 6324  df-on 6325  df-lim 6326  df-suc 6327  df-iota 6452  df-fun 6502  df-fn 6503  df-f 6504  df-f1 6505  df-fo 6506  df-f1o 6507  df-fv 6508  df-om 7807  df-1o 8416  df-ttrcl 9652
This theorem is referenced by:  ttrclco  9662  cottrcl  9663  dmttrcl  9665  rnttrcl  9666  dfttrcl2  9668  frmin  9693  frrlem16  9702  frr1  9703
  Copyright terms: Public domain W3C validator