Step |
Hyp |
Ref |
Expression |
1 |
|
reuf1odnf.f |
⊢ ( 𝜑 → 𝐹 : 𝐶 –1-1-onto→ 𝐵 ) |
2 |
|
reuf1odnf.x |
⊢ ( ( 𝜑 ∧ 𝑥 = ( 𝐹 ‘ 𝑦 ) ) → ( 𝜓 ↔ 𝜒 ) ) |
3 |
|
reuf1odnf.z |
⊢ ( 𝑥 = 𝑧 → ( 𝜓 ↔ 𝜃 ) ) |
4 |
|
reuf1odnf.n |
⊢ Ⅎ 𝑥 𝜒 |
5 |
|
f1of |
⊢ ( 𝐹 : 𝐶 –1-1-onto→ 𝐵 → 𝐹 : 𝐶 ⟶ 𝐵 ) |
6 |
1 5
|
syl |
⊢ ( 𝜑 → 𝐹 : 𝐶 ⟶ 𝐵 ) |
7 |
6
|
ffvelrnda |
⊢ ( ( 𝜑 ∧ 𝑦 ∈ 𝐶 ) → ( 𝐹 ‘ 𝑦 ) ∈ 𝐵 ) |
8 |
|
f1ofveu |
⊢ ( ( 𝐹 : 𝐶 –1-1-onto→ 𝐵 ∧ 𝑥 ∈ 𝐵 ) → ∃! 𝑦 ∈ 𝐶 ( 𝐹 ‘ 𝑦 ) = 𝑥 ) |
9 |
|
eqcom |
⊢ ( 𝑥 = ( 𝐹 ‘ 𝑦 ) ↔ ( 𝐹 ‘ 𝑦 ) = 𝑥 ) |
10 |
9
|
reubii |
⊢ ( ∃! 𝑦 ∈ 𝐶 𝑥 = ( 𝐹 ‘ 𝑦 ) ↔ ∃! 𝑦 ∈ 𝐶 ( 𝐹 ‘ 𝑦 ) = 𝑥 ) |
11 |
8 10
|
sylibr |
⊢ ( ( 𝐹 : 𝐶 –1-1-onto→ 𝐵 ∧ 𝑥 ∈ 𝐵 ) → ∃! 𝑦 ∈ 𝐶 𝑥 = ( 𝐹 ‘ 𝑦 ) ) |
12 |
1 11
|
sylan |
⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ∃! 𝑦 ∈ 𝐶 𝑥 = ( 𝐹 ‘ 𝑦 ) ) |
13 |
|
sbceq1a |
⊢ ( 𝑥 = ( 𝐹 ‘ 𝑦 ) → ( 𝜓 ↔ [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ) ) |
14 |
13
|
adantl |
⊢ ( ( 𝜑 ∧ 𝑥 = ( 𝐹 ‘ 𝑦 ) ) → ( 𝜓 ↔ [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ) ) |
15 |
3
|
cbvsbcvw |
⊢ ( [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ↔ [ ( 𝐹 ‘ 𝑦 ) / 𝑧 ] 𝜃 ) |
16 |
14 15
|
bitrdi |
⊢ ( ( 𝜑 ∧ 𝑥 = ( 𝐹 ‘ 𝑦 ) ) → ( 𝜓 ↔ [ ( 𝐹 ‘ 𝑦 ) / 𝑧 ] 𝜃 ) ) |
17 |
7 12 16
|
reuxfr1d |
⊢ ( 𝜑 → ( ∃! 𝑥 ∈ 𝐵 𝜓 ↔ ∃! 𝑦 ∈ 𝐶 [ ( 𝐹 ‘ 𝑦 ) / 𝑧 ] 𝜃 ) ) |
18 |
15
|
a1i |
⊢ ( 𝜑 → ( [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ↔ [ ( 𝐹 ‘ 𝑦 ) / 𝑧 ] 𝜃 ) ) |
19 |
18
|
bicomd |
⊢ ( 𝜑 → ( [ ( 𝐹 ‘ 𝑦 ) / 𝑧 ] 𝜃 ↔ [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ) ) |
20 |
19
|
reubidv |
⊢ ( 𝜑 → ( ∃! 𝑦 ∈ 𝐶 [ ( 𝐹 ‘ 𝑦 ) / 𝑧 ] 𝜃 ↔ ∃! 𝑦 ∈ 𝐶 [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ) ) |
21 |
|
fvexd |
⊢ ( 𝜑 → ( 𝐹 ‘ 𝑦 ) ∈ V ) |
22 |
|
nfv |
⊢ Ⅎ 𝑥 𝜑 |
23 |
4
|
a1i |
⊢ ( 𝜑 → Ⅎ 𝑥 𝜒 ) |
24 |
21 2 22 23
|
sbciedf |
⊢ ( 𝜑 → ( [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ↔ 𝜒 ) ) |
25 |
24
|
reubidv |
⊢ ( 𝜑 → ( ∃! 𝑦 ∈ 𝐶 [ ( 𝐹 ‘ 𝑦 ) / 𝑥 ] 𝜓 ↔ ∃! 𝑦 ∈ 𝐶 𝜒 ) ) |
26 |
17 20 25
|
3bitrd |
⊢ ( 𝜑 → ( ∃! 𝑥 ∈ 𝐵 𝜓 ↔ ∃! 𝑦 ∈ 𝐶 𝜒 ) ) |