let p be Element of REAL 3; for f being PartFunc of (REAL 3),REAL st f is total & f is constant holds
grad f,p = 0.REAL 3
let f be PartFunc of (REAL 3),REAL ; ( f is total & f is constant implies grad f,p = 0.REAL 3 )
assume A0:
( f is total & f is constant )
; grad f,p = 0.REAL 3
A2:
dom f = REAL 3
by A0, FUNCT_2:def 1;
REAL = [#] REAL
;
then reconsider W = REAL as open Subset of REAL ;
consider a being Real such that
A3:
for p being Element of REAL 3 st p in REAL 3 holds
f . p = a
by A0, A2, PARTFUN2:def 1;
then A7:
f * (reproj 1,p) is constant
by PARTFUN2:def 1;
set g1 = f * (reproj 1,p);
A8:
dom (f * (reproj 1,p)) = W
by A0, FUNCT_2:def 1;
A9:
(f * (reproj 1,p)) | W is constant
by A7;
A10:
f * (reproj 1,p) is_differentiable_on REAL
by A8, A9, FDIFF_1:30;
A12:
for x being Real st x in REAL holds
diff (f * (reproj 1,p)),x = 0
proof
let x be
Real;
( x in REAL implies diff (f * (reproj 1,p)),x = 0 )
assume
x in REAL
;
diff (f * (reproj 1,p)),x = 0
diff (f * (reproj 1,p)),
x =
((f * (reproj 1,p)) `| W) . x
by A10, FDIFF_1:def 8
.=
0
by A8, A9, FDIFF_1:30
;
hence
diff (f * (reproj 1,p)),
x = 0
;
verum
end;
A14:
partdiff f,p,1 = 0
by A12;
then A18:
f * (reproj 2,p) is constant
by PARTFUN2:def 1;
set g2 = f * (reproj 2,p);
A19:
dom (f * (reproj 2,p)) = W
by A0, FUNCT_2:def 1;
A20:
(f * (reproj 2,p)) | W is constant
by A18;
A21:
( f * (reproj 2,p) is_differentiable_on REAL & ( for y being Real st y in REAL holds
((f * (reproj 2,p)) `| W) . y = 0 ) )
by A19, A20, FDIFF_1:30;
A23:
for y being Real st y in REAL holds
diff (f * (reproj 2,p)),y = 0
proof
let y be
Real;
( y in REAL implies diff (f * (reproj 2,p)),y = 0 )
assume
y in REAL
;
diff (f * (reproj 2,p)),y = 0
diff (f * (reproj 2,p)),
y =
((f * (reproj 2,p)) `| W) . y
by A21, FDIFF_1:def 8
.=
0
by A19, A20, FDIFF_1:30
;
hence
diff (f * (reproj 2,p)),
y = 0
;
verum
end;
A25:
partdiff f,p,2 = 0
by A23;
then A29:
f * (reproj 3,p) is constant
by PARTFUN2:def 1;
set g3 = f * (reproj 3,p);
A30:
dom (f * (reproj 3,p)) = W
by A0, FUNCT_2:def 1;
A31:
(f * (reproj 3,p)) | W is constant
by A29;
A32:
( f * (reproj 3,p) is_differentiable_on REAL & ( for z being Real st z in REAL holds
((f * (reproj 3,p)) `| W) . z = 0 ) )
by A30, A31, FDIFF_1:30;
A34:
for z being Real st z in REAL holds
diff (f * (reproj 3,p)),z = 0
proof
let z be
Real;
( z in REAL implies diff (f * (reproj 3,p)),z = 0 )
assume
z in REAL
;
diff (f * (reproj 3,p)),z = 0
diff (f * (reproj 3,p)),
z =
((f * (reproj 3,p)) `| W) . z
by A32, FDIFF_1:def 8
.=
0
by A30, A31, FDIFF_1:30
;
hence
diff (f * (reproj 3,p)),
z = 0
;
verum
end;
A36:
partdiff f,p,3 = 0
by A34;
grad f,p =
|[0 ,0 ,0 ]|
by A14, A25, A36, Th43
.=
0.REAL 3
by FINSEQ_2:76
;
hence
grad f,p = 0.REAL 3
; verum