Metamath Proof Explorer


Theorem sbciegft

Description: Conversion of implicit substitution to explicit class substitution, using a bound-variable hypothesis instead of distinct variables. (Closed theorem version of sbciegf .) (Contributed by NM, 10-Nov-2005) (Revised by Mario Carneiro, 13-Oct-2016)

Ref Expression
Assertion sbciegft ( ( 𝐴𝑉 ∧ Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( [ 𝐴 / 𝑥 ] 𝜑𝜓 ) )

Proof

Step Hyp Ref Expression
1 sbc5 ( [ 𝐴 / 𝑥 ] 𝜑 ↔ ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) )
2 biimp ( ( 𝜑𝜓 ) → ( 𝜑𝜓 ) )
3 2 imim2i ( ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) → ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) )
4 3 impd ( ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) → ( ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) )
5 4 alimi ( ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) → ∀ 𝑥 ( ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) )
6 19.23t ( Ⅎ 𝑥 𝜓 → ( ∀ 𝑥 ( ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) ↔ ( ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) ) )
7 6 biimpa ( ( Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) ) → ( ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) )
8 5 7 sylan2 ( ( Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) )
9 8 3adant1 ( ( 𝐴𝑉 ∧ Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) → 𝜓 ) )
10 1 9 syl5bi ( ( 𝐴𝑉 ∧ Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( [ 𝐴 / 𝑥 ] 𝜑𝜓 ) )
11 biimpr ( ( 𝜑𝜓 ) → ( 𝜓𝜑 ) )
12 11 imim2i ( ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) → ( 𝑥 = 𝐴 → ( 𝜓𝜑 ) ) )
13 12 com23 ( ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) → ( 𝜓 → ( 𝑥 = 𝐴𝜑 ) ) )
14 13 alimi ( ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) → ∀ 𝑥 ( 𝜓 → ( 𝑥 = 𝐴𝜑 ) ) )
15 19.21t ( Ⅎ 𝑥 𝜓 → ( ∀ 𝑥 ( 𝜓 → ( 𝑥 = 𝐴𝜑 ) ) ↔ ( 𝜓 → ∀ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) ) )
16 15 biimpa ( ( Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝜓 → ( 𝑥 = 𝐴𝜑 ) ) ) → ( 𝜓 → ∀ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
17 14 16 sylan2 ( ( Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( 𝜓 → ∀ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
18 17 3adant1 ( ( 𝐴𝑉 ∧ Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( 𝜓 → ∀ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
19 sbc6g ( 𝐴𝑉 → ( [ 𝐴 / 𝑥 ] 𝜑 ↔ ∀ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
20 19 3ad2ant1 ( ( 𝐴𝑉 ∧ Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( [ 𝐴 / 𝑥 ] 𝜑 ↔ ∀ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
21 18 20 sylibrd ( ( 𝐴𝑉 ∧ Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( 𝜓[ 𝐴 / 𝑥 ] 𝜑 ) )
22 10 21 impbid ( ( 𝐴𝑉 ∧ Ⅎ 𝑥 𝜓 ∧ ∀ 𝑥 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) ) ) → ( [ 𝐴 / 𝑥 ] 𝜑𝜓 ) )