Metamath Proof Explorer


Theorem selvval

Description: Value of the "variable selection" function. (Contributed by SN, 4-Nov-2023)

Ref Expression
Hypotheses selvval.p 𝑃 = ( 𝐼 mPoly 𝑅 )
selvval.b 𝐵 = ( Base ‘ 𝑃 )
selvval.u 𝑈 = ( ( 𝐼𝐽 ) mPoly 𝑅 )
selvval.t 𝑇 = ( 𝐽 mPoly 𝑈 )
selvval.c 𝐶 = ( algSc ‘ 𝑇 )
selvval.d 𝐷 = ( 𝐶 ∘ ( algSc ‘ 𝑈 ) )
selvval.j ( 𝜑𝐽𝐼 )
selvval.f ( 𝜑𝐹𝐵 )
Assertion selvval ( 𝜑 → ( ( ( 𝐼 selectVars 𝑅 ) ‘ 𝐽 ) ‘ 𝐹 ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )

Proof

Step Hyp Ref Expression
1 selvval.p 𝑃 = ( 𝐼 mPoly 𝑅 )
2 selvval.b 𝐵 = ( Base ‘ 𝑃 )
3 selvval.u 𝑈 = ( ( 𝐼𝐽 ) mPoly 𝑅 )
4 selvval.t 𝑇 = ( 𝐽 mPoly 𝑈 )
5 selvval.c 𝐶 = ( algSc ‘ 𝑇 )
6 selvval.d 𝐷 = ( 𝐶 ∘ ( algSc ‘ 𝑈 ) )
7 selvval.j ( 𝜑𝐽𝐼 )
8 selvval.f ( 𝜑𝐹𝐵 )
9 coeq2 ( 𝑓 = 𝐹 → ( 𝑑𝑓 ) = ( 𝑑𝐹 ) )
10 9 fveq2d ( 𝑓 = 𝐹 → ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝑓 ) ) = ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) )
11 10 fveq1d ( 𝑓 = 𝐹 → ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝑓 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
12 11 csbeq2dv ( 𝑓 = 𝐹 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝑓 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
13 12 csbeq2dv ( 𝑓 = 𝐹 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝑓 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
14 13 csbeq2dv ( 𝑓 = 𝐹 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝑓 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
15 14 csbeq2dv ( 𝑓 = 𝐹 ( ( 𝐼𝐽 ) mPoly 𝑅 ) / 𝑢 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝑓 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( 𝐼𝐽 ) mPoly 𝑅 ) / 𝑢 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
16 reldmmpl Rel dom mPoly
17 16 1 2 elbasov ( 𝐹𝐵 → ( 𝐼 ∈ V ∧ 𝑅 ∈ V ) )
18 8 17 syl ( 𝜑 → ( 𝐼 ∈ V ∧ 𝑅 ∈ V ) )
19 18 simpld ( 𝜑𝐼 ∈ V )
20 18 simprd ( 𝜑𝑅 ∈ V )
21 19 20 7 selvfval ( 𝜑 → ( ( 𝐼 selectVars 𝑅 ) ‘ 𝐽 ) = ( 𝑓 ∈ ( Base ‘ ( 𝐼 mPoly 𝑅 ) ) ↦ ( ( 𝐼𝐽 ) mPoly 𝑅 ) / 𝑢 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝑓 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) ) )
22 1 fveq2i ( Base ‘ 𝑃 ) = ( Base ‘ ( 𝐼 mPoly 𝑅 ) )
23 2 22 eqtri 𝐵 = ( Base ‘ ( 𝐼 mPoly 𝑅 ) )
24 8 23 eleqtrdi ( 𝜑𝐹 ∈ ( Base ‘ ( 𝐼 mPoly 𝑅 ) ) )
25 fvex ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) ∈ V
26 25 csbex ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) ∈ V
27 26 csbex ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) ∈ V
28 27 csbex ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) ∈ V
29 28 csbex ( ( 𝐼𝐽 ) mPoly 𝑅 ) / 𝑢 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) ∈ V
30 29 a1i ( 𝜑 ( ( 𝐼𝐽 ) mPoly 𝑅 ) / 𝑢 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) ∈ V )
31 15 21 24 30 fvmptd4 ( 𝜑 → ( ( ( 𝐼 selectVars 𝑅 ) ‘ 𝐽 ) ‘ 𝐹 ) = ( ( 𝐼𝐽 ) mPoly 𝑅 ) / 𝑢 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
32 ovex ( ( 𝐼𝐽 ) mPoly 𝑅 ) ∈ V
33 3 eqeq2i ( 𝑢 = 𝑈𝑢 = ( ( 𝐼𝐽 ) mPoly 𝑅 ) )
34 oveq2 ( 𝑢 = 𝑈 → ( 𝐽 mPoly 𝑢 ) = ( 𝐽 mPoly 𝑈 ) )
35 fveq2 ( 𝑢 = 𝑈 → ( algSc ‘ 𝑢 ) = ( algSc ‘ 𝑈 ) )
36 35 coeq2d ( 𝑢 = 𝑈 → ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) = ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) )
37 oveq2 ( 𝑢 = 𝑈 → ( 𝐽 mVar 𝑢 ) = ( 𝐽 mVar 𝑈 ) )
38 37 fveq1d ( 𝑢 = 𝑈 → ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) = ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) )
39 38 ifeq1d ( 𝑢 = 𝑈 → if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) = if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) )
40 39 mpteq2dv ( 𝑢 = 𝑈 → ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) = ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) )
41 40 fveq2d ( 𝑢 = 𝑈 → ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
42 36 41 csbeq12dv ( 𝑢 = 𝑈 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
43 42 csbeq2dv ( 𝑢 = 𝑈 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
44 34 43 csbeq12dv ( 𝑢 = 𝑈 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( 𝐽 mPoly 𝑈 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
45 ovex ( 𝐽 mPoly 𝑈 ) ∈ V
46 4 eqeq2i ( 𝑡 = 𝑇𝑡 = ( 𝐽 mPoly 𝑈 ) )
47 fveq2 ( 𝑡 = 𝑇 → ( algSc ‘ 𝑡 ) = ( algSc ‘ 𝑇 ) )
48 oveq2 ( 𝑡 = 𝑇 → ( 𝐼 evalSub 𝑡 ) = ( 𝐼 evalSub 𝑇 ) )
49 48 fveq1d ( 𝑡 = 𝑇 → ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) = ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) )
50 49 fveq1d ( 𝑡 = 𝑇 → ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) = ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) )
51 50 fveq1d ( 𝑡 = 𝑇 → ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
52 51 csbeq2dv ( 𝑡 = 𝑇 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
53 47 52 csbeq12dv ( 𝑡 = 𝑇 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( algSc ‘ 𝑇 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
54 fvex ( algSc ‘ 𝑇 ) ∈ V
55 5 eqeq2i ( 𝑐 = 𝐶𝑐 = ( algSc ‘ 𝑇 ) )
56 coeq1 ( 𝑐 = 𝐶 → ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) = ( 𝐶 ∘ ( algSc ‘ 𝑈 ) ) )
57 fveq1 ( 𝑐 = 𝐶 → ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) = ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) )
58 57 ifeq2d ( 𝑐 = 𝐶 → if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) = if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) )
59 58 mpteq2dv ( 𝑐 = 𝐶 → ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) = ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) )
60 59 fveq2d ( 𝑐 = 𝐶 → ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
61 56 60 csbeq12dv ( 𝑐 = 𝐶 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( 𝐶 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
62 5 fvexi 𝐶 ∈ V
63 fvex ( algSc ‘ 𝑈 ) ∈ V
64 62 63 coex ( 𝐶 ∘ ( algSc ‘ 𝑈 ) ) ∈ V
65 6 eqeq2i ( 𝑑 = 𝐷𝑑 = ( 𝐶 ∘ ( algSc ‘ 𝑈 ) ) )
66 rneq ( 𝑑 = 𝐷 → ran 𝑑 = ran 𝐷 )
67 66 fveq2d ( 𝑑 = 𝐷 → ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) = ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) )
68 coeq1 ( 𝑑 = 𝐷 → ( 𝑑𝐹 ) = ( 𝐷𝐹 ) )
69 67 68 fveq12d ( 𝑑 = 𝐷 → ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) = ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) )
70 69 fveq1d ( 𝑑 = 𝐷 → ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
71 65 70 sylbir ( 𝑑 = ( 𝐶 ∘ ( algSc ‘ 𝑈 ) ) → ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
72 64 71 csbie ( 𝐶 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) )
73 61 72 eqtrdi ( 𝑐 = 𝐶 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
74 55 73 sylbir ( 𝑐 = ( algSc ‘ 𝑇 ) → ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
75 54 74 csbie ( algSc ‘ 𝑇 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) )
76 53 75 eqtrdi ( 𝑡 = 𝑇 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
77 46 76 sylbir ( 𝑡 = ( 𝐽 mPoly 𝑈 ) → ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
78 45 77 csbie ( 𝐽 mPoly 𝑈 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑈 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) )
79 44 78 eqtrdi ( 𝑢 = 𝑈 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
80 33 79 sylbir ( 𝑢 = ( ( 𝐼𝐽 ) mPoly 𝑅 ) → ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )
81 32 80 csbie ( ( 𝐼𝐽 ) mPoly 𝑅 ) / 𝑢 ( 𝐽 mPoly 𝑢 ) / 𝑡 ( algSc ‘ 𝑡 ) / 𝑐 ( 𝑐 ∘ ( algSc ‘ 𝑢 ) ) / 𝑑 ( ( ( ( 𝐼 evalSub 𝑡 ) ‘ ran 𝑑 ) ‘ ( 𝑑𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑢 ) ‘ 𝑥 ) , ( 𝑐 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) )
82 31 81 eqtrdi ( 𝜑 → ( ( ( 𝐼 selectVars 𝑅 ) ‘ 𝐽 ) ‘ 𝐹 ) = ( ( ( ( 𝐼 evalSub 𝑇 ) ‘ ran 𝐷 ) ‘ ( 𝐷𝐹 ) ) ‘ ( 𝑥𝐼 ↦ if ( 𝑥𝐽 , ( ( 𝐽 mVar 𝑈 ) ‘ 𝑥 ) , ( 𝐶 ‘ ( ( ( 𝐼𝐽 ) mVar 𝑅 ) ‘ 𝑥 ) ) ) ) ) )