Metamath Proof Explorer


Theorem sbcfg

Description: Distribute proper substitution through the function predicate with domain and codomain. (Contributed by Alexander van der Vekens, 15-Jul-2018)

Ref Expression
Assertion sbcfg XV[˙X/x]˙F:ABX/xF:X/xAX/xB

Proof

Step Hyp Ref Expression
1 df-f F:ABFFnAranFB
2 1 a1i XVF:ABFFnAranFB
3 2 sbcbidv XV[˙X/x]˙F:AB[˙X/x]˙FFnAranFB
4 sbcfng XV[˙X/x]˙FFnAX/xFFnX/xA
5 sbcssg XV[˙X/x]˙ranFBX/xranFX/xB
6 csbrn X/xranF=ranX/xF
7 6 sseq1i X/xranFX/xBranX/xFX/xB
8 5 7 bitrdi XV[˙X/x]˙ranFBranX/xFX/xB
9 4 8 anbi12d XV[˙X/x]˙FFnA[˙X/x]˙ranFBX/xFFnX/xAranX/xFX/xB
10 sbcan [˙X/x]˙FFnAranFB[˙X/x]˙FFnA[˙X/x]˙ranFB
11 df-f X/xF:X/xAX/xBX/xFFnX/xAranX/xFX/xB
12 9 10 11 3bitr4g XV[˙X/x]˙FFnAranFBX/xF:X/xAX/xB
13 3 12 bitrd XV[˙X/x]˙F:ABX/xF:X/xAX/xB