| Step | Hyp | Ref | Expression | 
						
							| 1 |  | smuval.a | ⊢ ( 𝜑  →  𝐴  ⊆  ℕ0 ) | 
						
							| 2 |  | smuval.b | ⊢ ( 𝜑  →  𝐵  ⊆  ℕ0 ) | 
						
							| 3 |  | smuval.p | ⊢ 𝑃  =  seq 0 ( ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) ,  ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) ) | 
						
							| 4 |  | 0nn0 | ⊢ 0  ∈  ℕ0 | 
						
							| 5 |  | iftrue | ⊢ ( 𝑛  =  0  →  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) )  =  ∅ ) | 
						
							| 6 |  | eqid | ⊢ ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) )  =  ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) | 
						
							| 7 |  | 0ex | ⊢ ∅  ∈  V | 
						
							| 8 | 5 6 7 | fvmpt | ⊢ ( 0  ∈  ℕ0  →  ( ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) ‘ 0 )  =  ∅ ) | 
						
							| 9 | 4 8 | mp1i | ⊢ ( 𝜑  →  ( ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) ‘ 0 )  =  ∅ ) | 
						
							| 10 |  | 0elpw | ⊢ ∅  ∈  𝒫  ℕ0 | 
						
							| 11 | 9 10 | eqeltrdi | ⊢ ( 𝜑  →  ( ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) ‘ 0 )  ∈  𝒫  ℕ0 ) | 
						
							| 12 |  | df-ov | ⊢ ( 𝑥 ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) 𝑦 )  =  ( ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) ‘ 〈 𝑥 ,  𝑦 〉 ) | 
						
							| 13 |  | elpwi | ⊢ ( 𝑝  ∈  𝒫  ℕ0  →  𝑝  ⊆  ℕ0 ) | 
						
							| 14 | 13 | adantr | ⊢ ( ( 𝑝  ∈  𝒫  ℕ0  ∧  𝑚  ∈  ℕ0 )  →  𝑝  ⊆  ℕ0 ) | 
						
							| 15 |  | ssrab2 | ⊢ { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) }  ⊆  ℕ0 | 
						
							| 16 |  | sadcl | ⊢ ( ( 𝑝  ⊆  ℕ0  ∧  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) }  ⊆  ℕ0 )  →  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } )  ⊆  ℕ0 ) | 
						
							| 17 | 14 15 16 | sylancl | ⊢ ( ( 𝑝  ∈  𝒫  ℕ0  ∧  𝑚  ∈  ℕ0 )  →  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } )  ⊆  ℕ0 ) | 
						
							| 18 |  | nn0ex | ⊢ ℕ0  ∈  V | 
						
							| 19 | 18 | elpw2 | ⊢ ( ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } )  ∈  𝒫  ℕ0  ↔  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } )  ⊆  ℕ0 ) | 
						
							| 20 | 17 19 | sylibr | ⊢ ( ( 𝑝  ∈  𝒫  ℕ0  ∧  𝑚  ∈  ℕ0 )  →  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } )  ∈  𝒫  ℕ0 ) | 
						
							| 21 | 20 | rgen2 | ⊢ ∀ 𝑝  ∈  𝒫  ℕ0 ∀ 𝑚  ∈  ℕ0 ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } )  ∈  𝒫  ℕ0 | 
						
							| 22 |  | eqid | ⊢ ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) )  =  ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) | 
						
							| 23 | 22 | fmpo | ⊢ ( ∀ 𝑝  ∈  𝒫  ℕ0 ∀ 𝑚  ∈  ℕ0 ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } )  ∈  𝒫  ℕ0  ↔  ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) : ( 𝒫  ℕ0  ×  ℕ0 ) ⟶ 𝒫  ℕ0 ) | 
						
							| 24 | 21 23 | mpbi | ⊢ ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) : ( 𝒫  ℕ0  ×  ℕ0 ) ⟶ 𝒫  ℕ0 | 
						
							| 25 | 24 10 | f0cli | ⊢ ( ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) ‘ 〈 𝑥 ,  𝑦 〉 )  ∈  𝒫  ℕ0 | 
						
							| 26 | 12 25 | eqeltri | ⊢ ( 𝑥 ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) 𝑦 )  ∈  𝒫  ℕ0 | 
						
							| 27 | 26 | a1i | ⊢ ( ( 𝜑  ∧  ( 𝑥  ∈  𝒫  ℕ0  ∧  𝑦  ∈  V ) )  →  ( 𝑥 ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) 𝑦 )  ∈  𝒫  ℕ0 ) | 
						
							| 28 |  | nn0uz | ⊢ ℕ0  =  ( ℤ≥ ‘ 0 ) | 
						
							| 29 |  | 0zd | ⊢ ( 𝜑  →  0  ∈  ℤ ) | 
						
							| 30 |  | fvexd | ⊢ ( ( 𝜑  ∧  𝑥  ∈  ( ℤ≥ ‘ ( 0  +  1 ) ) )  →  ( ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) ‘ 𝑥 )  ∈  V ) | 
						
							| 31 | 11 27 28 29 30 | seqf2 | ⊢ ( 𝜑  →  seq 0 ( ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) ,  ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) ) : ℕ0 ⟶ 𝒫  ℕ0 ) | 
						
							| 32 | 3 | feq1i | ⊢ ( 𝑃 : ℕ0 ⟶ 𝒫  ℕ0  ↔  seq 0 ( ( 𝑝  ∈  𝒫  ℕ0 ,  𝑚  ∈  ℕ0  ↦  ( 𝑝  sadd  { 𝑛  ∈  ℕ0  ∣  ( 𝑚  ∈  𝐴  ∧  ( 𝑛  −  𝑚 )  ∈  𝐵 ) } ) ) ,  ( 𝑛  ∈  ℕ0  ↦  if ( 𝑛  =  0 ,  ∅ ,  ( 𝑛  −  1 ) ) ) ) : ℕ0 ⟶ 𝒫  ℕ0 ) | 
						
							| 33 | 31 32 | sylibr | ⊢ ( 𝜑  →  𝑃 : ℕ0 ⟶ 𝒫  ℕ0 ) |