| Step | Hyp | Ref | Expression | 
						
							| 1 |  | peano2 | ⊢ ( 𝐴  ∈  ω  →  suc  𝐴  ∈  ω ) | 
						
							| 2 |  | nnawordex | ⊢ ( ( suc  𝐴  ∈  ω  ∧  𝐵  ∈  ω )  →  ( suc  𝐴  ⊆  𝐵  ↔  ∃ 𝑦  ∈  ω ( suc  𝐴  +o  𝑦 )  =  𝐵 ) ) | 
						
							| 3 | 1 2 | sylan | ⊢ ( ( 𝐴  ∈  ω  ∧  𝐵  ∈  ω )  →  ( suc  𝐴  ⊆  𝐵  ↔  ∃ 𝑦  ∈  ω ( suc  𝐴  +o  𝑦 )  =  𝐵 ) ) | 
						
							| 4 |  | nnacl | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ( 𝐴  +o  𝑦 )  ∈  ω ) | 
						
							| 5 |  | nnaword1 | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  𝐴  ⊆  ( 𝐴  +o  𝑦 ) ) | 
						
							| 6 |  | nnasuc | ⊢ ( ( 𝑦  ∈  ω  ∧  𝐴  ∈  ω )  →  ( 𝑦  +o  suc  𝐴 )  =  suc  ( 𝑦  +o  𝐴 ) ) | 
						
							| 7 | 6 | ancoms | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ( 𝑦  +o  suc  𝐴 )  =  suc  ( 𝑦  +o  𝐴 ) ) | 
						
							| 8 |  | nnacom | ⊢ ( ( suc  𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ( suc  𝐴  +o  𝑦 )  =  ( 𝑦  +o  suc  𝐴 ) ) | 
						
							| 9 | 1 8 | sylan | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ( suc  𝐴  +o  𝑦 )  =  ( 𝑦  +o  suc  𝐴 ) ) | 
						
							| 10 |  | nnacom | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ( 𝐴  +o  𝑦 )  =  ( 𝑦  +o  𝐴 ) ) | 
						
							| 11 |  | suceq | ⊢ ( ( 𝐴  +o  𝑦 )  =  ( 𝑦  +o  𝐴 )  →  suc  ( 𝐴  +o  𝑦 )  =  suc  ( 𝑦  +o  𝐴 ) ) | 
						
							| 12 | 10 11 | syl | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  suc  ( 𝐴  +o  𝑦 )  =  suc  ( 𝑦  +o  𝐴 ) ) | 
						
							| 13 | 7 9 12 | 3eqtr4d | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ( suc  𝐴  +o  𝑦 )  =  suc  ( 𝐴  +o  𝑦 ) ) | 
						
							| 14 |  | sseq2 | ⊢ ( 𝑥  =  ( 𝐴  +o  𝑦 )  →  ( 𝐴  ⊆  𝑥  ↔  𝐴  ⊆  ( 𝐴  +o  𝑦 ) ) ) | 
						
							| 15 |  | suceq | ⊢ ( 𝑥  =  ( 𝐴  +o  𝑦 )  →  suc  𝑥  =  suc  ( 𝐴  +o  𝑦 ) ) | 
						
							| 16 | 15 | eqeq2d | ⊢ ( 𝑥  =  ( 𝐴  +o  𝑦 )  →  ( ( suc  𝐴  +o  𝑦 )  =  suc  𝑥  ↔  ( suc  𝐴  +o  𝑦 )  =  suc  ( 𝐴  +o  𝑦 ) ) ) | 
						
							| 17 | 14 16 | anbi12d | ⊢ ( 𝑥  =  ( 𝐴  +o  𝑦 )  →  ( ( 𝐴  ⊆  𝑥  ∧  ( suc  𝐴  +o  𝑦 )  =  suc  𝑥 )  ↔  ( 𝐴  ⊆  ( 𝐴  +o  𝑦 )  ∧  ( suc  𝐴  +o  𝑦 )  =  suc  ( 𝐴  +o  𝑦 ) ) ) ) | 
						
							| 18 | 17 | rspcev | ⊢ ( ( ( 𝐴  +o  𝑦 )  ∈  ω  ∧  ( 𝐴  ⊆  ( 𝐴  +o  𝑦 )  ∧  ( suc  𝐴  +o  𝑦 )  =  suc  ( 𝐴  +o  𝑦 ) ) )  →  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  ( suc  𝐴  +o  𝑦 )  =  suc  𝑥 ) ) | 
						
							| 19 | 4 5 13 18 | syl12anc | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  ( suc  𝐴  +o  𝑦 )  =  suc  𝑥 ) ) | 
						
							| 20 |  | eqeq1 | ⊢ ( ( suc  𝐴  +o  𝑦 )  =  𝐵  →  ( ( suc  𝐴  +o  𝑦 )  =  suc  𝑥  ↔  𝐵  =  suc  𝑥 ) ) | 
						
							| 21 | 20 | anbi2d | ⊢ ( ( suc  𝐴  +o  𝑦 )  =  𝐵  →  ( ( 𝐴  ⊆  𝑥  ∧  ( suc  𝐴  +o  𝑦 )  =  suc  𝑥 )  ↔  ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 22 | 21 | rexbidv | ⊢ ( ( suc  𝐴  +o  𝑦 )  =  𝐵  →  ( ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  ( suc  𝐴  +o  𝑦 )  =  suc  𝑥 )  ↔  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 23 | 19 22 | syl5ibcom | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑦  ∈  ω )  →  ( ( suc  𝐴  +o  𝑦 )  =  𝐵  →  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 24 | 23 | rexlimdva | ⊢ ( 𝐴  ∈  ω  →  ( ∃ 𝑦  ∈  ω ( suc  𝐴  +o  𝑦 )  =  𝐵  →  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 25 | 24 | adantr | ⊢ ( ( 𝐴  ∈  ω  ∧  𝐵  ∈  ω )  →  ( ∃ 𝑦  ∈  ω ( suc  𝐴  +o  𝑦 )  =  𝐵  →  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 26 | 3 25 | sylbid | ⊢ ( ( 𝐴  ∈  ω  ∧  𝐵  ∈  ω )  →  ( suc  𝐴  ⊆  𝐵  →  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 27 | 26 | expimpd | ⊢ ( 𝐴  ∈  ω  →  ( ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 )  →  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 28 |  | peano2 | ⊢ ( 𝑥  ∈  ω  →  suc  𝑥  ∈  ω ) | 
						
							| 29 | 28 | ad2antlr | ⊢ ( ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  ∧  𝐴  ⊆  𝑥 )  →  suc  𝑥  ∈  ω ) | 
						
							| 30 |  | nnord | ⊢ ( 𝐴  ∈  ω  →  Ord  𝐴 ) | 
						
							| 31 |  | nnord | ⊢ ( 𝑥  ∈  ω  →  Ord  𝑥 ) | 
						
							| 32 |  | ordsucsssuc | ⊢ ( ( Ord  𝐴  ∧  Ord  𝑥 )  →  ( 𝐴  ⊆  𝑥  ↔  suc  𝐴  ⊆  suc  𝑥 ) ) | 
						
							| 33 | 30 31 32 | syl2an | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  →  ( 𝐴  ⊆  𝑥  ↔  suc  𝐴  ⊆  suc  𝑥 ) ) | 
						
							| 34 | 33 | biimpa | ⊢ ( ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  ∧  𝐴  ⊆  𝑥 )  →  suc  𝐴  ⊆  suc  𝑥 ) | 
						
							| 35 | 29 34 | jca | ⊢ ( ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  ∧  𝐴  ⊆  𝑥 )  →  ( suc  𝑥  ∈  ω  ∧  suc  𝐴  ⊆  suc  𝑥 ) ) | 
						
							| 36 |  | eleq1 | ⊢ ( 𝐵  =  suc  𝑥  →  ( 𝐵  ∈  ω  ↔  suc  𝑥  ∈  ω ) ) | 
						
							| 37 |  | sseq2 | ⊢ ( 𝐵  =  suc  𝑥  →  ( suc  𝐴  ⊆  𝐵  ↔  suc  𝐴  ⊆  suc  𝑥 ) ) | 
						
							| 38 | 36 37 | anbi12d | ⊢ ( 𝐵  =  suc  𝑥  →  ( ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 )  ↔  ( suc  𝑥  ∈  ω  ∧  suc  𝐴  ⊆  suc  𝑥 ) ) ) | 
						
							| 39 | 35 38 | syl5ibrcom | ⊢ ( ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  ∧  𝐴  ⊆  𝑥 )  →  ( 𝐵  =  suc  𝑥  →  ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 ) ) ) | 
						
							| 40 | 39 | expimpd | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  →  ( ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 )  →  ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 ) ) ) | 
						
							| 41 | 40 | rexlimdva | ⊢ ( 𝐴  ∈  ω  →  ( ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 )  →  ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 ) ) ) | 
						
							| 42 | 27 41 | impbid | ⊢ ( 𝐴  ∈  ω  →  ( ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 )  ↔  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 43 |  | eldif | ⊢ ( 𝐵  ∈  ( ω  ∖  suc  𝐴 )  ↔  ( 𝐵  ∈  ω  ∧  ¬  𝐵  ∈  suc  𝐴 ) ) | 
						
							| 44 |  | nnord | ⊢ ( suc  𝐴  ∈  ω  →  Ord  suc  𝐴 ) | 
						
							| 45 | 1 44 | syl | ⊢ ( 𝐴  ∈  ω  →  Ord  suc  𝐴 ) | 
						
							| 46 |  | nnord | ⊢ ( 𝐵  ∈  ω  →  Ord  𝐵 ) | 
						
							| 47 |  | ordtri1 | ⊢ ( ( Ord  suc  𝐴  ∧  Ord  𝐵 )  →  ( suc  𝐴  ⊆  𝐵  ↔  ¬  𝐵  ∈  suc  𝐴 ) ) | 
						
							| 48 | 45 46 47 | syl2an | ⊢ ( ( 𝐴  ∈  ω  ∧  𝐵  ∈  ω )  →  ( suc  𝐴  ⊆  𝐵  ↔  ¬  𝐵  ∈  suc  𝐴 ) ) | 
						
							| 49 | 48 | pm5.32da | ⊢ ( 𝐴  ∈  ω  →  ( ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 )  ↔  ( 𝐵  ∈  ω  ∧  ¬  𝐵  ∈  suc  𝐴 ) ) ) | 
						
							| 50 | 43 49 | bitr4id | ⊢ ( 𝐴  ∈  ω  →  ( 𝐵  ∈  ( ω  ∖  suc  𝐴 )  ↔  ( 𝐵  ∈  ω  ∧  suc  𝐴  ⊆  𝐵 ) ) ) | 
						
							| 51 |  | eldif | ⊢ ( 𝑥  ∈  ( ω  ∖  𝐴 )  ↔  ( 𝑥  ∈  ω  ∧  ¬  𝑥  ∈  𝐴 ) ) | 
						
							| 52 | 51 | anbi1i | ⊢ ( ( 𝑥  ∈  ( ω  ∖  𝐴 )  ∧  𝐵  =  suc  𝑥 )  ↔  ( ( 𝑥  ∈  ω  ∧  ¬  𝑥  ∈  𝐴 )  ∧  𝐵  =  suc  𝑥 ) ) | 
						
							| 53 |  | anass | ⊢ ( ( ( 𝑥  ∈  ω  ∧  ¬  𝑥  ∈  𝐴 )  ∧  𝐵  =  suc  𝑥 )  ↔  ( 𝑥  ∈  ω  ∧  ( ¬  𝑥  ∈  𝐴  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 54 | 52 53 | bitri | ⊢ ( ( 𝑥  ∈  ( ω  ∖  𝐴 )  ∧  𝐵  =  suc  𝑥 )  ↔  ( 𝑥  ∈  ω  ∧  ( ¬  𝑥  ∈  𝐴  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 55 | 54 | rexbii2 | ⊢ ( ∃ 𝑥  ∈  ( ω  ∖  𝐴 ) 𝐵  =  suc  𝑥  ↔  ∃ 𝑥  ∈  ω ( ¬  𝑥  ∈  𝐴  ∧  𝐵  =  suc  𝑥 ) ) | 
						
							| 56 |  | ordtri1 | ⊢ ( ( Ord  𝐴  ∧  Ord  𝑥 )  →  ( 𝐴  ⊆  𝑥  ↔  ¬  𝑥  ∈  𝐴 ) ) | 
						
							| 57 | 30 31 56 | syl2an | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  →  ( 𝐴  ⊆  𝑥  ↔  ¬  𝑥  ∈  𝐴 ) ) | 
						
							| 58 | 57 | anbi1d | ⊢ ( ( 𝐴  ∈  ω  ∧  𝑥  ∈  ω )  →  ( ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 )  ↔  ( ¬  𝑥  ∈  𝐴  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 59 | 58 | rexbidva | ⊢ ( 𝐴  ∈  ω  →  ( ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 )  ↔  ∃ 𝑥  ∈  ω ( ¬  𝑥  ∈  𝐴  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 60 | 55 59 | bitr4id | ⊢ ( 𝐴  ∈  ω  →  ( ∃ 𝑥  ∈  ( ω  ∖  𝐴 ) 𝐵  =  suc  𝑥  ↔  ∃ 𝑥  ∈  ω ( 𝐴  ⊆  𝑥  ∧  𝐵  =  suc  𝑥 ) ) ) | 
						
							| 61 | 42 50 60 | 3bitr4d | ⊢ ( 𝐴  ∈  ω  →  ( 𝐵  ∈  ( ω  ∖  suc  𝐴 )  ↔  ∃ 𝑥  ∈  ( ω  ∖  𝐴 ) 𝐵  =  suc  𝑥 ) ) |