Metamath Proof Explorer


Theorem opreu2reuALT

Description: Correspondence between uniqueness of ordered pairs and double restricted existential uniqueness quantification. Alternate proof of one direction only, use opreu2reurex instead. (Contributed by Thierry Arnoux, 4-Jul-2023) (Proof modification is discouraged.) (New usage is discouraged.)

Ref Expression
Hypothesis opsbc2ie.a ( 𝑝 = ⟨ 𝑎 , 𝑏 ⟩ → ( 𝜑𝜒 ) )
Assertion opreu2reuALT ( ( ∃! 𝑎𝐴𝑏𝐵 𝜒 ∧ ∃! 𝑏𝐵𝑎𝐴 𝜒 ) → ∃! 𝑝 ∈ ( 𝐴 × 𝐵 ) 𝜑 )

Proof

Step Hyp Ref Expression
1 opsbc2ie.a ( 𝑝 = ⟨ 𝑎 , 𝑏 ⟩ → ( 𝜑𝜒 ) )
2 2reu4 ( ( ∃! 𝑎𝐴𝑏𝐵 𝜒 ∧ ∃! 𝑏𝐵𝑎𝐴 𝜒 ) ↔ ( ∃ 𝑎𝐴𝑏𝐵 𝜒 ∧ ∃ 𝑥𝐴𝑦𝐵𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) )
3 simpllr ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → 𝑥𝐴 )
4 simplr ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → 𝑦𝐵 )
5 opelxpi ( ( 𝑥𝐴𝑦𝐵 ) → ⟨ 𝑥 , 𝑦 ⟩ ∈ ( 𝐴 × 𝐵 ) )
6 3 4 5 syl2anc ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → ⟨ 𝑥 , 𝑦 ⟩ ∈ ( 𝐴 × 𝐵 ) )
7 nfre1 𝑎𝑎𝐴𝑏𝐵 𝜒
8 nfv 𝑎 𝑥𝐴
9 7 8 nfan 𝑎 ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 )
10 nfv 𝑎 𝑦𝐵
11 9 10 nfan 𝑎 ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 )
12 nfra1 𝑎𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) )
13 11 12 nfan 𝑎 ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) )
14 nfcv 𝑎 𝑦
15 nfsbc1v 𝑎 [ 𝑥 / 𝑎 ] 𝜒
16 14 15 nfsbc 𝑎 [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒
17 nfcv 𝑏 𝐴
18 nfre1 𝑏𝑏𝐵 𝜒
19 17 18 nfrex 𝑏𝑎𝐴𝑏𝐵 𝜒
20 nfv 𝑏 𝑥𝐴
21 19 20 nfan 𝑏 ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 )
22 nfv 𝑏 𝑦𝐵
23 21 22 nfan 𝑏 ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 )
24 nfra1 𝑏𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) )
25 17 24 nfral 𝑏𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) )
26 23 25 nfan 𝑏 ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) )
27 nfv 𝑏 𝑎𝐴
28 26 27 nfan 𝑏 ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 )
29 28 18 nfan 𝑏 ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ ∃ 𝑏𝐵 𝜒 )
30 nfsbc1v 𝑏 [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒
31 rspa ( ( ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ∧ 𝑎𝐴 ) → ∀ 𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) )
32 31 ad5ant23 ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → ∀ 𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) )
33 simplr ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → 𝑏𝐵 )
34 simpr ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → 𝜒 )
35 rspa ( ( ∀ 𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ∧ 𝑏𝐵 ) → ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) )
36 35 imp ( ( ( ∀ 𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → ( 𝑎 = 𝑥𝑏 = 𝑦 ) )
37 32 33 34 36 syl21anc ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → ( 𝑎 = 𝑥𝑏 = 𝑦 ) )
38 37 simprd ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → 𝑏 = 𝑦 )
39 37 simpld ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → 𝑎 = 𝑥 )
40 sbceq1a ( 𝑎 = 𝑥 → ( 𝜒[ 𝑥 / 𝑎 ] 𝜒 ) )
41 40 biimpa ( ( 𝑎 = 𝑥𝜒 ) → [ 𝑥 / 𝑎 ] 𝜒 )
42 39 34 41 syl2anc ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → [ 𝑥 / 𝑎 ] 𝜒 )
43 sbceq1a ( 𝑏 = 𝑦 → ( [ 𝑥 / 𝑎 ] 𝜒[ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 ) )
44 43 biimpa ( ( 𝑏 = 𝑦[ 𝑥 / 𝑎 ] 𝜒 ) → [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 )
45 38 42 44 syl2anc ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 )
46 45 adantllr ( ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ ∃ 𝑏𝐵 𝜒 ) ∧ 𝑏𝐵 ) ∧ 𝜒 ) → [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 )
47 simpr ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ ∃ 𝑏𝐵 𝜒 ) → ∃ 𝑏𝐵 𝜒 )
48 29 30 46 47 r19.29af2 ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑎𝐴 ) ∧ ∃ 𝑏𝐵 𝜒 ) → [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 )
49 simplll ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → ∃ 𝑎𝐴𝑏𝐵 𝜒 )
50 13 16 48 49 r19.29af2 ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 )
51 1st2nd2 ( 𝑝 ∈ ( 𝐴 × 𝐵 ) → 𝑝 = ⟨ ( 1st𝑝 ) , ( 2nd𝑝 ) ⟩ )
52 51 ad2antlr ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → 𝑝 = ⟨ ( 1st𝑝 ) , ( 2nd𝑝 ) ⟩ )
53 nfv 𝑎 𝑝 ∈ ( 𝐴 × 𝐵 )
54 13 53 nfan 𝑎 ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) )
55 nfv 𝑎 𝜑
56 54 55 nfan 𝑎 ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 )
57 nfv 𝑏 𝑝 ∈ ( 𝐴 × 𝐵 )
58 26 57 nfan 𝑏 ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) )
59 nfv 𝑏 𝜑
60 58 59 nfan 𝑏 ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 )
61 nfv 𝑎 ( 𝜑 → ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) )
62 nfv 𝑏 ( 𝜑 → ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) )
63 xp1st ( 𝑝 ∈ ( 𝐴 × 𝐵 ) → ( 1st𝑝 ) ∈ 𝐴 )
64 63 ad2antlr ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ( 1st𝑝 ) ∈ 𝐴 )
65 xp2nd ( 𝑝 ∈ ( 𝐴 × 𝐵 ) → ( 2nd𝑝 ) ∈ 𝐵 )
66 65 ad2antlr ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ( 2nd𝑝 ) ∈ 𝐵 )
67 eqcom ( ( 1st𝑝 ) = 𝑎𝑎 = ( 1st𝑝 ) )
68 eqcom ( ( 2nd𝑝 ) = 𝑏𝑏 = ( 2nd𝑝 ) )
69 eqopi ( ( 𝑝 ∈ ( 𝐴 × 𝐵 ) ∧ ( ( 1st𝑝 ) = 𝑎 ∧ ( 2nd𝑝 ) = 𝑏 ) ) → 𝑝 = ⟨ 𝑎 , 𝑏 ⟩ )
70 69 1 syl ( ( 𝑝 ∈ ( 𝐴 × 𝐵 ) ∧ ( ( 1st𝑝 ) = 𝑎 ∧ ( 2nd𝑝 ) = 𝑏 ) ) → ( 𝜑𝜒 ) )
71 70 bicomd ( ( 𝑝 ∈ ( 𝐴 × 𝐵 ) ∧ ( ( 1st𝑝 ) = 𝑎 ∧ ( 2nd𝑝 ) = 𝑏 ) ) → ( 𝜒𝜑 ) )
72 71 ancoms ( ( ( ( 1st𝑝 ) = 𝑎 ∧ ( 2nd𝑝 ) = 𝑏 ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) → ( 𝜒𝜑 ) )
73 72 ex ( ( ( 1st𝑝 ) = 𝑎 ∧ ( 2nd𝑝 ) = 𝑏 ) → ( 𝑝 ∈ ( 𝐴 × 𝐵 ) → ( 𝜒𝜑 ) ) )
74 67 68 73 syl2anbr ( ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) → ( 𝑝 ∈ ( 𝐴 × 𝐵 ) → ( 𝜒𝜑 ) ) )
75 74 impcom ( ( 𝑝 ∈ ( 𝐴 × 𝐵 ) ∧ ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) ) → ( 𝜒𝜑 ) )
76 75 ad4ant24 ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) ∧ ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) ) → ( 𝜒𝜑 ) )
77 simpl ( ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) → 𝑎 = ( 1st𝑝 ) )
78 77 eqeq1d ( ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) → ( 𝑎 = 𝑥 ↔ ( 1st𝑝 ) = 𝑥 ) )
79 simpr ( ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) → 𝑏 = ( 2nd𝑝 ) )
80 79 eqeq1d ( ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) → ( 𝑏 = 𝑦 ↔ ( 2nd𝑝 ) = 𝑦 ) )
81 78 80 anbi12d ( ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) → ( ( 𝑎 = 𝑥𝑏 = 𝑦 ) ↔ ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) ) )
82 81 adantl ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) ∧ ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) ) → ( ( 𝑎 = 𝑥𝑏 = 𝑦 ) ↔ ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) ) )
83 76 82 imbi12d ( ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) ∧ ( 𝑎 = ( 1st𝑝 ) ∧ 𝑏 = ( 2nd𝑝 ) ) ) → ( ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ↔ ( 𝜑 → ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) ) ) )
84 simpllr ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) )
85 56 60 61 62 64 66 83 84 rspc2daf ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ( 𝜑 → ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) ) )
86 85 com12 ( 𝜑 → ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) ) )
87 86 anabsi7 ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ( ( 1st𝑝 ) = 𝑥 ∧ ( 2nd𝑝 ) = 𝑦 ) )
88 87 simpld ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ( 1st𝑝 ) = 𝑥 )
89 87 simprd ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ( 2nd𝑝 ) = 𝑦 )
90 88 89 opeq12d ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → ⟨ ( 1st𝑝 ) , ( 2nd𝑝 ) ⟩ = ⟨ 𝑥 , 𝑦 ⟩ )
91 52 90 eqtrd ( ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) ∧ 𝜑 ) → 𝑝 = ⟨ 𝑥 , 𝑦 ⟩ )
92 91 ex ( ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) ∧ 𝑝 ∈ ( 𝐴 × 𝐵 ) ) → ( 𝜑𝑝 = ⟨ 𝑥 , 𝑦 ⟩ ) )
93 92 ralrimiva ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → ∀ 𝑝 ∈ ( 𝐴 × 𝐵 ) ( 𝜑𝑝 = ⟨ 𝑥 , 𝑦 ⟩ ) )
94 6 50 93 3jca ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → ( ⟨ 𝑥 , 𝑦 ⟩ ∈ ( 𝐴 × 𝐵 ) ∧ [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 ∧ ∀ 𝑝 ∈ ( 𝐴 × 𝐵 ) ( 𝜑𝑝 = ⟨ 𝑥 , 𝑦 ⟩ ) ) )
95 1 opsbc2ie ( 𝑝 = ⟨ 𝑥 , 𝑦 ⟩ → ( 𝜑[ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 ) )
96 95 eqreu ( ( ⟨ 𝑥 , 𝑦 ⟩ ∈ ( 𝐴 × 𝐵 ) ∧ [ 𝑦 / 𝑏 ] [ 𝑥 / 𝑎 ] 𝜒 ∧ ∀ 𝑝 ∈ ( 𝐴 × 𝐵 ) ( 𝜑𝑝 = ⟨ 𝑥 , 𝑦 ⟩ ) ) → ∃! 𝑝 ∈ ( 𝐴 × 𝐵 ) 𝜑 )
97 94 96 syl ( ( ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒𝑥𝐴 ) ∧ 𝑦𝐵 ) ∧ ∀ 𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → ∃! 𝑝 ∈ ( 𝐴 × 𝐵 ) 𝜑 )
98 97 r19.29ffa ( ( ∃ 𝑎𝐴𝑏𝐵 𝜒 ∧ ∃ 𝑥𝐴𝑦𝐵𝑎𝐴𝑏𝐵 ( 𝜒 → ( 𝑎 = 𝑥𝑏 = 𝑦 ) ) ) → ∃! 𝑝 ∈ ( 𝐴 × 𝐵 ) 𝜑 )
99 2 98 sylbi ( ( ∃! 𝑎𝐴𝑏𝐵 𝜒 ∧ ∃! 𝑏𝐵𝑎𝐴 𝜒 ) → ∃! 𝑝 ∈ ( 𝐴 × 𝐵 ) 𝜑 )