Metamath Proof Explorer


Theorem extvval

Description: Value of the "variable extension" function. (Contributed by Thierry Arnoux, 25-Jan-2026)

Ref Expression
Hypotheses extvval.d D = h 0 I | finSupp 0 h
extvval.1 0 ˙ = 0 R
extvval.i φ I V
extvval.r φ R W
extvval.j J = I a
extvval.m M = Base J mPoly R
Assertion extvval Could not format assertion : No typesetting found for |- ( ph -> ( I extendVars R ) = ( a e. I |-> ( f e. M |-> ( x e. D |-> if ( ( x ` a ) = 0 , ( f ` ( x |` ( I \ { a } ) ) ) , .0. ) ) ) ) ) with typecode |-

Proof

Step Hyp Ref Expression
1 extvval.d D = h 0 I | finSupp 0 h
2 extvval.1 0 ˙ = 0 R
3 extvval.i φ I V
4 extvval.r φ R W
5 extvval.j J = I a
6 extvval.m M = Base J mPoly R
7 df-extv Could not format extendVars = ( i e. _V , r e. _V |-> ( a e. i |-> ( f e. ( Base ` ( ( i \ { a } ) mPoly r ) ) |-> ( x e. { h e. ( NN0 ^m i ) | h finSupp 0 } |-> if ( ( x ` a ) = 0 , ( f ` ( x |` ( i \ { a } ) ) ) , ( 0g ` r ) ) ) ) ) ) : No typesetting found for |- extendVars = ( i e. _V , r e. _V |-> ( a e. i |-> ( f e. ( Base ` ( ( i \ { a } ) mPoly r ) ) |-> ( x e. { h e. ( NN0 ^m i ) | h finSupp 0 } |-> if ( ( x ` a ) = 0 , ( f ` ( x |` ( i \ { a } ) ) ) , ( 0g ` r ) ) ) ) ) ) with typecode |-
8 7 a1i Could not format ( ph -> extendVars = ( i e. _V , r e. _V |-> ( a e. i |-> ( f e. ( Base ` ( ( i \ { a } ) mPoly r ) ) |-> ( x e. { h e. ( NN0 ^m i ) | h finSupp 0 } |-> if ( ( x ` a ) = 0 , ( f ` ( x |` ( i \ { a } ) ) ) , ( 0g ` r ) ) ) ) ) ) ) : No typesetting found for |- ( ph -> extendVars = ( i e. _V , r e. _V |-> ( a e. i |-> ( f e. ( Base ` ( ( i \ { a } ) mPoly r ) ) |-> ( x e. { h e. ( NN0 ^m i ) | h finSupp 0 } |-> if ( ( x ` a ) = 0 , ( f ` ( x |` ( i \ { a } ) ) ) , ( 0g ` r ) ) ) ) ) ) ) with typecode |-
9 simpl i = I r = R i = I
10 difeq1 i = I i a = I a
11 10 5 eqtr4di i = I i a = J
12 11 adantr i = I r = R i a = J
13 simpr i = I r = R r = R
14 12 13 oveq12d i = I r = R i a mPoly r = J mPoly R
15 14 fveq2d i = I r = R Base i a mPoly r = Base J mPoly R
16 15 6 eqtr4di i = I r = R Base i a mPoly r = M
17 oveq2 i = I 0 i = 0 I
18 17 rabeqdv i = I h 0 i | finSupp 0 h = h 0 I | finSupp 0 h
19 18 1 eqtr4di i = I h 0 i | finSupp 0 h = D
20 19 adantr i = I r = R h 0 i | finSupp 0 h = D
21 10 reseq2d i = I x i a = x I a
22 21 fveq2d i = I f x i a = f x I a
23 22 adantr i = I r = R f x i a = f x I a
24 fveq2 r = R 0 r = 0 R
25 24 adantl i = I r = R 0 r = 0 R
26 25 2 eqtr4di i = I r = R 0 r = 0 ˙
27 23 26 ifeq12d i = I r = R if x a = 0 f x i a 0 r = if x a = 0 f x I a 0 ˙
28 20 27 mpteq12dv i = I r = R x h 0 i | finSupp 0 h if x a = 0 f x i a 0 r = x D if x a = 0 f x I a 0 ˙
29 16 28 mpteq12dv i = I r = R f Base i a mPoly r x h 0 i | finSupp 0 h if x a = 0 f x i a 0 r = f M x D if x a = 0 f x I a 0 ˙
30 9 29 mpteq12dv i = I r = R a i f Base i a mPoly r x h 0 i | finSupp 0 h if x a = 0 f x i a 0 r = a I f M x D if x a = 0 f x I a 0 ˙
31 30 adantl φ i = I r = R a i f Base i a mPoly r x h 0 i | finSupp 0 h if x a = 0 f x i a 0 r = a I f M x D if x a = 0 f x I a 0 ˙
32 3 elexd φ I V
33 4 elexd φ R V
34 3 mptexd φ a I f M x D if x a = 0 f x I a 0 ˙ V
35 8 31 32 33 34 ovmpod Could not format ( ph -> ( I extendVars R ) = ( a e. I |-> ( f e. M |-> ( x e. D |-> if ( ( x ` a ) = 0 , ( f ` ( x |` ( I \ { a } ) ) ) , .0. ) ) ) ) ) : No typesetting found for |- ( ph -> ( I extendVars R ) = ( a e. I |-> ( f e. M |-> ( x e. D |-> if ( ( x ` a ) = 0 , ( f ` ( x |` ( I \ { a } ) ) ) , .0. ) ) ) ) ) with typecode |-