Metamath Proof Explorer


Theorem reuxfr1d

Description: Transfer existential uniqueness from a variable x to another variable y contained in expression A . Cf. reuxfr1ds . (Contributed by Thierry Arnoux, 7-Apr-2017)

Ref Expression
Hypotheses reuxfr1d.1 ⊢ ( ( 𝜑 ∧ 𝑦 ∈ 𝐶 ) → 𝐴 ∈ 𝐵 )
reuxfr1d.2 ⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ∃! 𝑦 ∈ 𝐶 𝑥 = 𝐴 )
reuxfr1d.3 ⊢ ( ( 𝜑 ∧ 𝑥 = 𝐴 ) → ( 𝜓 ↔ 𝜒 ) )
Assertion reuxfr1d ( 𝜑 → ( ∃! 𝑥 ∈ 𝐵 𝜓 ↔ ∃! 𝑦 ∈ 𝐶 𝜒 ) )

Proof

Step Hyp Ref Expression
1 reuxfr1d.1 ⊢ ( ( 𝜑 ∧ 𝑦 ∈ 𝐶 ) → 𝐴 ∈ 𝐵 )
2 reuxfr1d.2 ⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ∃! 𝑦 ∈ 𝐶 𝑥 = 𝐴 )
3 reuxfr1d.3 ⊢ ( ( 𝜑 ∧ 𝑥 = 𝐴 ) → ( 𝜓 ↔ 𝜒 ) )
4 reurex ⊢ ( ∃! 𝑦 ∈ 𝐶 𝑥 = 𝐴 → ∃ 𝑦 ∈ 𝐶 𝑥 = 𝐴 )
5 2 4 syl ⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ∃ 𝑦 ∈ 𝐶 𝑥 = 𝐴 )
6 5 biantrurd ⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ( 𝜓 ↔ ( ∃ 𝑦 ∈ 𝐶 𝑥 = 𝐴 ∧ 𝜓 ) ) )
7 r19.41v ⊢ ( ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜓 ) ↔ ( ∃ 𝑦 ∈ 𝐶 𝑥 = 𝐴 ∧ 𝜓 ) )
8 3 pm5.32da ⊢ ( 𝜑 → ( ( 𝑥 = 𝐴 ∧ 𝜓 ) ↔ ( 𝑥 = 𝐴 ∧ 𝜒 ) ) )
9 8 rexbidv ⊢ ( 𝜑 → ( ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜓 ) ↔ ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜒 ) ) )
10 7 9 bitr3id ⊢ ( 𝜑 → ( ( ∃ 𝑦 ∈ 𝐶 𝑥 = 𝐴 ∧ 𝜓 ) ↔ ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜒 ) ) )
11 10 adantr ⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ( ( ∃ 𝑦 ∈ 𝐶 𝑥 = 𝐴 ∧ 𝜓 ) ↔ ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜒 ) ) )
12 6 11 bitrd ⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ( 𝜓 ↔ ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜒 ) ) )
13 12 reubidva ⊢ ( 𝜑 → ( ∃! 𝑥 ∈ 𝐵 𝜓 ↔ ∃! 𝑥 ∈ 𝐵 ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜒 ) ) )
14 reurmo ⊢ ( ∃! 𝑦 ∈ 𝐶 𝑥 = 𝐴 → ∃* 𝑦 ∈ 𝐶 𝑥 = 𝐴 )
15 2 14 syl ⊢ ( ( 𝜑 ∧ 𝑥 ∈ 𝐵 ) → ∃* 𝑦 ∈ 𝐶 𝑥 = 𝐴 )
16 1 15 reuxfrd ⊢ ( 𝜑 → ( ∃! 𝑥 ∈ 𝐵 ∃ 𝑦 ∈ 𝐶 ( 𝑥 = 𝐴 ∧ 𝜒 ) ↔ ∃! 𝑦 ∈ 𝐶 𝜒 ) )
17 13 16 bitrd ⊢ ( 𝜑 → ( ∃! 𝑥 ∈ 𝐵 𝜓 ↔ ∃! 𝑦 ∈ 𝐶 𝜒 ) )