Users' Mathboxes Mathbox for Scott Fenton < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  rankaltopb Structured version   Visualization version   GIF version

Theorem rankaltopb 35943
Description: Compute the rank of an alternate ordered pair. (Contributed by Scott Fenton, 18-Dec-2013.) (Revised by Mario Carneiro, 19-Apr-2014.)
Assertion
Ref Expression
rankaltopb ((𝐴 (𝑅1 “ On) ∧ 𝐵 (𝑅1 “ On)) → (rank‘⟪𝐴, 𝐵⟫) = suc suc ((rank‘𝐴) ∪ suc (rank‘𝐵)))

Proof of Theorem rankaltopb
StepHypRef Expression
1 snwf 9878 . . 3 (𝐵 (𝑅1 “ On) → {𝐵} ∈ (𝑅1 “ On))
2 df-altop 35922 . . . . . 6 𝐴, 𝐵⟫ = {{𝐴}, {𝐴, {𝐵}}}
32fveq2i 6923 . . . . 5 (rank‘⟪𝐴, 𝐵⟫) = (rank‘{{𝐴}, {𝐴, {𝐵}}})
4 snwf 9878 . . . . . . 7 (𝐴 (𝑅1 “ On) → {𝐴} ∈ (𝑅1 “ On))
54adantr 480 . . . . . 6 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → {𝐴} ∈ (𝑅1 “ On))
6 prwf 9880 . . . . . 6 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → {𝐴, {𝐵}} ∈ (𝑅1 “ On))
7 rankprb 9920 . . . . . 6 (({𝐴} ∈ (𝑅1 “ On) ∧ {𝐴, {𝐵}} ∈ (𝑅1 “ On)) → (rank‘{{𝐴}, {𝐴, {𝐵}}}) = suc ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})))
85, 6, 7syl2anc 583 . . . . 5 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → (rank‘{{𝐴}, {𝐴, {𝐵}}}) = suc ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})))
93, 8eqtrid 2792 . . . 4 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → (rank‘⟪𝐴, 𝐵⟫) = suc ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})))
10 snsspr1 4839 . . . . . . . 8 {𝐴} ⊆ {𝐴, {𝐵}}
11 ssequn1 4209 . . . . . . . 8 ({𝐴} ⊆ {𝐴, {𝐵}} ↔ ({𝐴} ∪ {𝐴, {𝐵}}) = {𝐴, {𝐵}})
1210, 11mpbi 230 . . . . . . 7 ({𝐴} ∪ {𝐴, {𝐵}}) = {𝐴, {𝐵}}
1312fveq2i 6923 . . . . . 6 (rank‘({𝐴} ∪ {𝐴, {𝐵}})) = (rank‘{𝐴, {𝐵}})
14 rankunb 9919 . . . . . . 7 (({𝐴} ∈ (𝑅1 “ On) ∧ {𝐴, {𝐵}} ∈ (𝑅1 “ On)) → (rank‘({𝐴} ∪ {𝐴, {𝐵}})) = ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})))
155, 6, 14syl2anc 583 . . . . . 6 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → (rank‘({𝐴} ∪ {𝐴, {𝐵}})) = ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})))
16 rankprb 9920 . . . . . 6 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → (rank‘{𝐴, {𝐵}}) = suc ((rank‘𝐴) ∪ (rank‘{𝐵})))
1713, 15, 163eqtr3a 2804 . . . . 5 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})) = suc ((rank‘𝐴) ∪ (rank‘{𝐵})))
18 suceq 6461 . . . . 5 (((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})) = suc ((rank‘𝐴) ∪ (rank‘{𝐵})) → suc ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})) = suc suc ((rank‘𝐴) ∪ (rank‘{𝐵})))
1917, 18syl 17 . . . 4 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → suc ((rank‘{𝐴}) ∪ (rank‘{𝐴, {𝐵}})) = suc suc ((rank‘𝐴) ∪ (rank‘{𝐵})))
209, 19eqtrd 2780 . . 3 ((𝐴 (𝑅1 “ On) ∧ {𝐵} ∈ (𝑅1 “ On)) → (rank‘⟪𝐴, 𝐵⟫) = suc suc ((rank‘𝐴) ∪ (rank‘{𝐵})))
211, 20sylan2 592 . 2 ((𝐴 (𝑅1 “ On) ∧ 𝐵 (𝑅1 “ On)) → (rank‘⟪𝐴, 𝐵⟫) = suc suc ((rank‘𝐴) ∪ (rank‘{𝐵})))
22 ranksnb 9896 . . . . 5 (𝐵 (𝑅1 “ On) → (rank‘{𝐵}) = suc (rank‘𝐵))
2322uneq2d 4191 . . . 4 (𝐵 (𝑅1 “ On) → ((rank‘𝐴) ∪ (rank‘{𝐵})) = ((rank‘𝐴) ∪ suc (rank‘𝐵)))
24 suceq 6461 . . . 4 (((rank‘𝐴) ∪ (rank‘{𝐵})) = ((rank‘𝐴) ∪ suc (rank‘𝐵)) → suc ((rank‘𝐴) ∪ (rank‘{𝐵})) = suc ((rank‘𝐴) ∪ suc (rank‘𝐵)))
25 suceq 6461 . . . 4 (suc ((rank‘𝐴) ∪ (rank‘{𝐵})) = suc ((rank‘𝐴) ∪ suc (rank‘𝐵)) → suc suc ((rank‘𝐴) ∪ (rank‘{𝐵})) = suc suc ((rank‘𝐴) ∪ suc (rank‘𝐵)))
2623, 24, 253syl 18 . . 3 (𝐵 (𝑅1 “ On) → suc suc ((rank‘𝐴) ∪ (rank‘{𝐵})) = suc suc ((rank‘𝐴) ∪ suc (rank‘𝐵)))
2726adantl 481 . 2 ((𝐴 (𝑅1 “ On) ∧ 𝐵 (𝑅1 “ On)) → suc suc ((rank‘𝐴) ∪ (rank‘{𝐵})) = suc suc ((rank‘𝐴) ∪ suc (rank‘𝐵)))
2821, 27eqtrd 2780 1 ((𝐴 (𝑅1 “ On) ∧ 𝐵 (𝑅1 “ On)) → (rank‘⟪𝐴, 𝐵⟫) = suc suc ((rank‘𝐴) ∪ suc (rank‘𝐵)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1537  wcel 2108  cun 3974  wss 3976  {csn 4648  {cpr 4650   cuni 4931  cima 5703  Oncon0 6395  suc csuc 6397  cfv 6573  𝑅1cr1 9831  rankcrnk 9832  caltop 35920
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-8 2110  ax-9 2118  ax-10 2141  ax-11 2158  ax-12 2178  ax-ext 2711  ax-sep 5317  ax-nul 5324  ax-pow 5383  ax-pr 5447  ax-un 7770
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 847  df-3or 1088  df-3an 1089  df-tru 1540  df-fal 1550  df-ex 1778  df-nf 1782  df-sb 2065  df-mo 2543  df-eu 2572  df-clab 2718  df-cleq 2732  df-clel 2819  df-nfc 2895  df-ne 2947  df-ral 3068  df-rex 3077  df-reu 3389  df-rab 3444  df-v 3490  df-sbc 3805  df-csb 3922  df-dif 3979  df-un 3981  df-in 3983  df-ss 3993  df-pss 3996  df-nul 4353  df-if 4549  df-pw 4624  df-sn 4649  df-pr 4651  df-op 4655  df-uni 4932  df-int 4971  df-iun 5017  df-br 5167  df-opab 5229  df-mpt 5250  df-tr 5284  df-id 5593  df-eprel 5599  df-po 5607  df-so 5608  df-fr 5652  df-we 5654  df-xp 5706  df-rel 5707  df-cnv 5708  df-co 5709  df-dm 5710  df-rn 5711  df-res 5712  df-ima 5713  df-pred 6332  df-ord 6398  df-on 6399  df-lim 6400  df-suc 6401  df-iota 6525  df-fun 6575  df-fn 6576  df-f 6577  df-f1 6578  df-fo 6579  df-f1o 6580  df-fv 6581  df-ov 7451  df-om 7904  df-2nd 8031  df-frecs 8322  df-wrecs 8353  df-recs 8427  df-rdg 8466  df-r1 9833  df-rank 9834  df-altop 35922
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator