Metamath Proof Explorer


Theorem finxpeq1

Description: Equality theorem for Cartesian exponentiation. (Contributed by ML, 19-Oct-2020)

Ref Expression
Assertion finxpeq1 ( 𝑈 = 𝑉 → ( 𝑈 ↑↑ 𝑁 ) = ( 𝑉 ↑↑ 𝑁 ) )

Proof

Step Hyp Ref Expression
1 eleq2 ( 𝑈 = 𝑉 → ( 𝑥𝑈𝑥𝑉 ) )
2 1 anbi2d ( 𝑈 = 𝑉 → ( ( 𝑛 = 1o𝑥𝑈 ) ↔ ( 𝑛 = 1o𝑥𝑉 ) ) )
3 xpeq2 ( 𝑈 = 𝑉 → ( V × 𝑈 ) = ( V × 𝑉 ) )
4 3 eleq2d ( 𝑈 = 𝑉 → ( 𝑥 ∈ ( V × 𝑈 ) ↔ 𝑥 ∈ ( V × 𝑉 ) ) )
5 4 ifbid ( 𝑈 = 𝑉 → if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) = if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) )
6 2 5 ifbieq2d ( 𝑈 = 𝑉 → if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) = if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) )
7 6 mpoeq3dv ( 𝑈 = 𝑉 → ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) = ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) )
8 rdgeq1 ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) = ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) → rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) = rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) )
9 7 8 syl ( 𝑈 = 𝑉 → rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) = rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) )
10 9 fveq1d ( 𝑈 = 𝑉 → ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) )
11 10 eqeq2d ( 𝑈 = 𝑉 → ( ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ↔ ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ) )
12 11 anbi2d ( 𝑈 = 𝑉 → ( ( 𝑁 ∈ ω ∧ ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ) ↔ ( 𝑁 ∈ ω ∧ ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ) ) )
13 12 abbidv ( 𝑈 = 𝑉 → { 𝑦 ∣ ( 𝑁 ∈ ω ∧ ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ) } = { 𝑦 ∣ ( 𝑁 ∈ ω ∧ ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ) } )
14 df-finxp ( 𝑈 ↑↑ 𝑁 ) = { 𝑦 ∣ ( 𝑁 ∈ ω ∧ ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑈 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑈 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ) }
15 df-finxp ( 𝑉 ↑↑ 𝑁 ) = { 𝑦 ∣ ( 𝑁 ∈ ω ∧ ∅ = ( rec ( ( 𝑛 ∈ ω , 𝑥 ∈ V ↦ if ( ( 𝑛 = 1o𝑥𝑉 ) , ∅ , if ( 𝑥 ∈ ( V × 𝑉 ) , ⟨ 𝑛 , ( 1st𝑥 ) ⟩ , ⟨ 𝑛 , 𝑥 ⟩ ) ) ) , ⟨ 𝑁 , 𝑦 ⟩ ) ‘ 𝑁 ) ) }
16 13 14 15 3eqtr4g ( 𝑈 = 𝑉 → ( 𝑈 ↑↑ 𝑁 ) = ( 𝑉 ↑↑ 𝑁 ) )