Metamath Proof Explorer


Theorem 2mos

Description: Double "there exists at most one", using implicit substitution. (Contributed by NM, 10-Feb-2005)

Ref Expression
Hypothesis 2mos.1 ( ( 𝑥 = 𝑧𝑦 = 𝑤 ) → ( 𝜑𝜓 ) )
Assertion 2mos ( ∃ 𝑧𝑤𝑥𝑦 ( 𝜑 → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) ↔ ∀ 𝑥𝑦𝑧𝑤 ( ( 𝜑𝜓 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) )

Proof

Step Hyp Ref Expression
1 2mos.1 ( ( 𝑥 = 𝑧𝑦 = 𝑤 ) → ( 𝜑𝜓 ) )
2 2mo ( ∃ 𝑧𝑤𝑥𝑦 ( 𝜑 → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) ↔ ∀ 𝑥𝑦𝑧𝑤 ( ( 𝜑 ∧ [ 𝑧 / 𝑥 ] [ 𝑤 / 𝑦 ] 𝜑 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) )
3 nfv 𝑦 𝑥 = 𝑧
4 3 sbrim ( [ 𝑤 / 𝑦 ] ( 𝑥 = 𝑧𝜑 ) ↔ ( 𝑥 = 𝑧 → [ 𝑤 / 𝑦 ] 𝜑 ) )
5 1 expcom ( 𝑦 = 𝑤 → ( 𝑥 = 𝑧 → ( 𝜑𝜓 ) ) )
6 5 pm5.74d ( 𝑦 = 𝑤 → ( ( 𝑥 = 𝑧𝜑 ) ↔ ( 𝑥 = 𝑧𝜓 ) ) )
7 6 sbievw ( [ 𝑤 / 𝑦 ] ( 𝑥 = 𝑧𝜑 ) ↔ ( 𝑥 = 𝑧𝜓 ) )
8 4 7 bitr3i ( ( 𝑥 = 𝑧 → [ 𝑤 / 𝑦 ] 𝜑 ) ↔ ( 𝑥 = 𝑧𝜓 ) )
9 8 pm5.74ri ( 𝑥 = 𝑧 → ( [ 𝑤 / 𝑦 ] 𝜑𝜓 ) )
10 9 sbievw ( [ 𝑧 / 𝑥 ] [ 𝑤 / 𝑦 ] 𝜑𝜓 )
11 10 anbi2i ( ( 𝜑 ∧ [ 𝑧 / 𝑥 ] [ 𝑤 / 𝑦 ] 𝜑 ) ↔ ( 𝜑𝜓 ) )
12 11 imbi1i ( ( ( 𝜑 ∧ [ 𝑧 / 𝑥 ] [ 𝑤 / 𝑦 ] 𝜑 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) ↔ ( ( 𝜑𝜓 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) )
13 12 2albii ( ∀ 𝑧𝑤 ( ( 𝜑 ∧ [ 𝑧 / 𝑥 ] [ 𝑤 / 𝑦 ] 𝜑 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) ↔ ∀ 𝑧𝑤 ( ( 𝜑𝜓 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) )
14 13 2albii ( ∀ 𝑥𝑦𝑧𝑤 ( ( 𝜑 ∧ [ 𝑧 / 𝑥 ] [ 𝑤 / 𝑦 ] 𝜑 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) ↔ ∀ 𝑥𝑦𝑧𝑤 ( ( 𝜑𝜓 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) )
15 2 14 bitri ( ∃ 𝑧𝑤𝑥𝑦 ( 𝜑 → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) ↔ ∀ 𝑥𝑦𝑧𝑤 ( ( 𝜑𝜓 ) → ( 𝑥 = 𝑧𝑦 = 𝑤 ) ) )