Metamath Proof Explorer


Theorem sbcalf

Description: Move universal quantifier in and out of class substitution, with an explicit nonfree variable condition. (Contributed by Giovanni Mascellani, 29-May-2019)

Ref Expression
Hypothesis sbcalf.1 ⊢ Ⅎ _ y A
Assertion sbcalf ⊢ [˙A / x]˙ ∀ y φ ↔ ∀ y [˙A / x]˙ φ

Proof

Step Hyp Ref Expression
1 sbcalf.1 ⊢ Ⅎ _ y A
2 sb8v ⊢ ∀ y φ ↔ ∀ z z y φ
3 2 sbcbii ⊢ [˙A / x]˙ ∀ y φ ↔ [˙A / x]˙ ∀ z z y φ
4 sbcal ⊢ [˙A / x]˙ ∀ z z y φ ↔ ∀ z [˙A / x]˙ z y φ
5 nfs1v ⊢ Ⅎ y z y φ
6 1 5 nfsbcw ⊢ Ⅎ y [˙A / x]˙ z y φ
7 nfv ⊢ Ⅎ z [˙A / x]˙ φ
8 sbequ12r ⊢ z = y → z y φ ↔ φ
9 8 sbcbidv ⊢ z = y → [˙A / x]˙ z y φ ↔ [˙A / x]˙ φ
10 6 7 9 cbvalv1 ⊢ ∀ z [˙A / x]˙ z y φ ↔ ∀ y [˙A / x]˙ φ
11 3 4 10 3bitri ⊢ [˙A / x]˙ ∀ y φ ↔ ∀ y [˙A / x]˙ φ