:: VECTSP_1 semantic presentation  Show TPTP formulae Show IDV graph for whole article:: Showing IDV graph ... (Click the Palm Trees again to close it)

defpred S1[ Element of REAL , set ] means $2 = - $1;

definition
canceled;
canceled;
canceled;
canceled;
canceled;
func G_Real -> strict LoopStr equals :: VECTSP_1:def 6
LoopStr(# REAL ,addreal ,0 #);
coherence
LoopStr(# REAL ,addreal ,0 #) is strict LoopStr
;
end;

:: deftheorem VECTSP_1:def 1 :
canceled;

:: deftheorem VECTSP_1:def 2 :
canceled;

:: deftheorem VECTSP_1:def 3 :
canceled;

:: deftheorem VECTSP_1:def 4 :
canceled;

:: deftheorem VECTSP_1:def 5 :
canceled;

:: deftheorem defines G_Real VECTSP_1:def 6 :
G_Real = LoopStr(# REAL ,addreal ,0 #);

registration
cluster G_Real -> non empty strict ;
coherence
not G_Real is empty
;
end;

registration
cluster G_Real -> non empty strict Abelian add-associative right_zeroed right_complementable ;
coherence
( G_Real is Abelian & G_Real is add-associative & G_Real is right_zeroed & G_Real is right_complementable )
proof end;
end;

theorem :: VECTSP_1:1  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:2  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:3  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:4  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:5  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:6  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for x, y, z being Element of G_Real holds
( x + y = y + x & (x + y) + z = x + (y + z) & x + (0. G_Real ) = x & x + (- x) = 0. G_Real ) by RLVECT_1:def 6, RLVECT_1:def 7, RLVECT_1:def 10;

registration
cluster non empty strict Abelian add-associative right_zeroed right_complementable LoopStr ;
existence
ex b1 being non empty LoopStr st
( b1 is strict & b1 is add-associative & b1 is right_zeroed & b1 is right_complementable & b1 is Abelian )
proof end;
end;

definition
mode AbGroup is non empty Abelian add-associative right_zeroed right_complementable LoopStr ;
end;

theorem :: VECTSP_1:7  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for GS being non empty LoopStr holds
( ( for x, y, z being Element of GS holds
( x + y = y + x & (x + y) + z = x + (y + z) & x + (0. GS) = x & ex x' being Element of GS st x + x' = 0. GS ) ) iff GS is AbGroup ) by RLVECT_1:def 5, RLVECT_1:def 6, RLVECT_1:def 7, RLVECT_1:def 8;

definition
attr c1 is strict;
struct multLoopStr -> HGrStr ;
aggr multLoopStr(# carrier, mult, unity #) -> multLoopStr ;
sel unity c1 -> Element of the carrier of c1;
end;

registration
cluster non empty strict multLoopStr ;
existence
ex b1 being multLoopStr st
( not b1 is empty & b1 is strict )
proof end;
end;

definition
let FS be multLoopStr ;
canceled;
canceled;
func 1_ FS -> Element of FS equals :: VECTSP_1:def 9
the unity of FS;
coherence
the unity of FS is Element of FS
;
end;

:: deftheorem VECTSP_1:def 7 :
canceled;

:: deftheorem VECTSP_1:def 8 :
canceled;

:: deftheorem defines 1_ VECTSP_1:def 9 :
for FS being multLoopStr holds 1_ FS = the unity of FS;

definition
attr c1 is strict;
struct multLoopStr_0 -> multLoopStr , ZeroStr ;
aggr multLoopStr_0(# carrier, mult, unity, Zero #) -> multLoopStr_0 ;
end;

registration
cluster non empty strict multLoopStr_0 ;
existence
ex b1 being multLoopStr_0 st
( not b1 is empty & b1 is strict )
proof end;
end;

definition
attr c1 is strict;
struct doubleLoopStr -> LoopStr , multLoopStr_0 ;
aggr doubleLoopStr(# carrier, add, mult, unity, Zero #) -> doubleLoopStr ;
end;

registration
cluster non empty strict doubleLoopStr ;
existence
ex b1 being doubleLoopStr st
( not b1 is empty & b1 is strict )
proof end;
end;

definition
let IT be non empty doubleLoopStr ;
canceled;
attr IT is right-distributive means :Def11: :: VECTSP_1:def 11
for a, b, c being Element of IT holds a * (b + c) = (a * b) + (a * c);
attr IT is left-distributive means :Def12: :: VECTSP_1:def 12
for a, b, c being Element of IT holds (b + c) * a = (b * a) + (c * a);
end;

:: deftheorem VECTSP_1:def 10 :
canceled;

:: deftheorem Def11 defines right-distributive VECTSP_1:def 11 :
for IT being non empty doubleLoopStr holds
( IT is right-distributive iff for a, b, c being Element of IT holds a * (b + c) = (a * b) + (a * c) );

:: deftheorem Def12 defines left-distributive VECTSP_1:def 12 :
for IT being non empty doubleLoopStr holds
( IT is left-distributive iff for a, b, c being Element of IT holds (b + c) * a = (b * a) + (c * a) );

definition
let IT be non empty multLoopStr ;
attr IT is right_unital means :Def13: :: VECTSP_1:def 13
for x being Element of IT holds x * (1. IT) = x;
end;

:: deftheorem Def13 defines right_unital VECTSP_1:def 13 :
for IT being non empty multLoopStr holds
( IT is right_unital iff for x being Element of IT holds x * (1. IT) = x );

definition
canceled;
func F_Real -> strict doubleLoopStr equals :: VECTSP_1:def 15
doubleLoopStr(# REAL ,addreal ,multreal ,1,0 #);
correctness
coherence
doubleLoopStr(# REAL ,addreal ,multreal ,1,0 #) is strict doubleLoopStr
;
;
end;

:: deftheorem VECTSP_1:def 14 :
canceled;

:: deftheorem defines F_Real VECTSP_1:def 15 :
F_Real = doubleLoopStr(# REAL ,addreal ,multreal ,1,0 #);

definition
let IT be non empty doubleLoopStr ;
canceled;
canceled;
attr IT is distributive means :Def18: :: VECTSP_1:def 18
for x, y, z being Element of IT holds
( x * (y + z) = (x * y) + (x * z) & (y + z) * x = (y * x) + (z * x) );
end;

:: deftheorem VECTSP_1:def 16 :
canceled;

:: deftheorem VECTSP_1:def 17 :
canceled;

:: deftheorem Def18 defines distributive VECTSP_1:def 18 :
for IT being non empty doubleLoopStr holds
( IT is distributive iff for x, y, z being Element of IT holds
( x * (y + z) = (x * y) + (x * z) & (y + z) * x = (y * x) + (z * x) ) );

definition
let IT be non empty multLoopStr ;
attr IT is left_unital means :Def19: :: VECTSP_1:def 19
for x being Element of IT holds (1. IT) * x = x;
end;

:: deftheorem Def19 defines left_unital VECTSP_1:def 19 :
for IT being non empty multLoopStr holds
( IT is left_unital iff for x being Element of IT holds (1. IT) * x = x );

definition
let IT be non empty multLoopStr_0 ;
attr IT is Field-like means :Def20: :: VECTSP_1:def 20
for x being Element of IT st x <> 0. IT holds
ex y being Element of IT st x * y = 1. IT;
end;

:: deftheorem Def20 defines Field-like VECTSP_1:def 20 :
for IT being non empty multLoopStr_0 holds
( IT is Field-like iff for x being Element of IT st x <> 0. IT holds
ex y being Element of IT st x * y = 1. IT );

definition
let IT be non empty multLoopStr_0 ;
attr IT is degenerated means :Def21: :: VECTSP_1:def 21
0. IT = 1. IT;
end;

:: deftheorem Def21 defines degenerated VECTSP_1:def 21 :
for IT being non empty multLoopStr_0 holds
( IT is degenerated iff 0. IT = 1. IT );

registration
cluster F_Real -> non empty strict ;
coherence
not F_Real is empty
proof end;
end;

set FR = F_Real ;

Lm1: now
let h, a be Element of F_Real ; :: thesis: ( a = 1 implies ( h * a = h & a * h = h ) )
assume A1: a = 1 ; :: thesis: ( h * a = h & a * h = h )
reconsider g = h as Element of REAL ;
thus h * a = multreal . h,a
.= g * 1 by A1, BINOP_2:def 11
.= h ; :: thesis: a * h = h
thus a * h = multreal . a,h
.= 1 * g by A1, BINOP_2:def 11
.= h ; :: thesis: verum
end;

registration
cluster F_Real -> non empty unital strict ;
coherence
F_Real is unital
proof end;
end;

Lm2: 1. F_Real = 1
proof end;

registration
cluster F_Real -> non empty Abelian add-associative right_zeroed right_complementable unital associative commutative strict right_unital distributive left_unital Field-like non degenerated ;
coherence
( F_Real is add-associative & F_Real is right_zeroed & F_Real is right_complementable & F_Real is Abelian & F_Real is commutative & F_Real is associative & F_Real is left_unital & F_Real is right_unital & F_Real is distributive & F_Real is Field-like & not F_Real is degenerated )
proof end;
end;

Lm3: for L being non empty doubleLoopStr st L is distributive holds
( L is right-distributive & L is left-distributive )
proof end;

registration
cluster non empty distributive -> non empty right-distributive left-distributive doubleLoopStr ;
coherence
for b1 being non empty doubleLoopStr st b1 is distributive holds
( b1 is left-distributive & b1 is right-distributive )
by Lm3;
cluster non empty right-distributive left-distributive -> non empty distributive doubleLoopStr ;
coherence
for b1 being non empty doubleLoopStr st b1 is left-distributive & b1 is right-distributive holds
b1 is distributive
proof end;
end;

registration
cluster non empty unital -> non empty right_unital left_unital multLoopStr ;
coherence
for b1 being non empty multLoopStr st b1 is unital holds
( b1 is left_unital & b1 is right_unital )
proof end;
cluster non empty right_unital left_unital -> non empty unital multLoopStr ;
coherence
for b1 being non empty multLoopStr st b1 is left_unital & b1 is right_unital holds
b1 is unital
proof end;
end;

registration
cluster non empty associative commutative HGrStr ;
existence
ex b1 being non empty HGrStr st
( b1 is commutative & b1 is associative )
proof end;
end;

registration
cluster non empty unital associative commutative right_unital left_unital multLoopStr ;
existence
ex b1 being non empty multLoopStr st
( b1 is commutative & b1 is associative & b1 is unital )
proof end;
end;

registration
cluster non empty Abelian add-associative right_zeroed right_complementable unital associative commutative strict right-distributive left-distributive right_unital distributive left_unital Field-like non degenerated doubleLoopStr ;
existence
ex b1 being non empty doubleLoopStr st
( b1 is add-associative & b1 is right_zeroed & b1 is right_complementable & b1 is Abelian & b1 is commutative & b1 is associative & b1 is left_unital & b1 is right_unital & b1 is distributive & b1 is Field-like & not b1 is degenerated & b1 is strict )
proof end;
end;

definition
mode Field is non empty Abelian add-associative right_zeroed right_complementable associative commutative distributive left_unital Field-like non degenerated doubleLoopStr ;
end;

theorem :: VECTSP_1:8  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:9  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:10  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:11  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:12  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:13  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:14  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:15  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:16  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:17  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:18  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:19  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:20  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
1. F_Real = 1 by Lm2;

theorem :: VECTSP_1:21  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for x, y, z being Element of F_Real holds
( x + y = y + x & (x + y) + z = x + (y + z) & x + (0. F_Real ) = x & x + (- x) = 0. F_Real & x * y = y * x & (x * y) * z = x * (y * z) & (1. F_Real ) * x = x & ( x <> 0. F_Real implies ex y being Element of F_Real st x * y = 1. F_Real ) & x * (y + z) = (x * y) + (x * z) & (y + z) * x = (y * x) + (z * x) ) by Def18, Def19, Def20, GROUP_1:def 4, RLVECT_1:def 6, RLVECT_1:def 7, RLVECT_1:def 10;

theorem :: VECTSP_1:22  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for FS being non empty doubleLoopStr holds
( ( for x, y, z being Element of FS holds
( ( x <> 0. FS implies ex y being Element of FS st x * y = 1. FS ) & x * (y + z) = (x * y) + (x * z) & (y + z) * x = (y * x) + (z * x) ) ) iff FS is non empty distributive Field-like doubleLoopStr ) by Def18, Def20;

theorem :: VECTSP_1:23  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:24  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:25  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:26  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:27  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:28  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:29  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:30  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:31  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:32  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th33: :: VECTSP_1:33  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty associative commutative distributive left_unital Field-like doubleLoopStr
for x, y, z being Element of F st x <> 0. F & x * y = x * z holds
y = z
proof end;

definition
let F be non empty associative commutative distributive left_unital Field-like doubleLoopStr ;
let x be Element of F;
assume A1: x <> 0. F ;
func x " -> Element of F means :Def22: :: VECTSP_1:def 22
x * it = 1. F;
existence
ex b1 being Element of F st x * b1 = 1. F
by A1, Def20;
uniqueness
for b1, b2 being Element of F st x * b1 = 1. F & x * b2 = 1. F holds
b1 = b2
by A1, Th33;
end;

:: deftheorem Def22 defines " VECTSP_1:def 22 :
for F being non empty associative commutative distributive left_unital Field-like doubleLoopStr
for x being Element of F st x <> 0. F holds
for b3 being Element of F holds
( b3 = x " iff x * b3 = 1. F );

definition
let F be non empty associative commutative distributive left_unital Field-like doubleLoopStr ;
let x, y be Element of F;
func x / y -> Element of F equals :: VECTSP_1:def 23
x * (y " );
coherence
x * (y " ) is Element of F
;
end;

:: deftheorem defines / VECTSP_1:def 23 :
for F being non empty associative commutative distributive left_unital Field-like doubleLoopStr
for x, y being Element of F holds x / y = x * (y " );

theorem :: VECTSP_1:34  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:35  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th36: :: VECTSP_1:36  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable right-distributive doubleLoopStr
for x being Element of F holds x * (0. F) = 0. F
proof end;

theorem :: VECTSP_1:37  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:38  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th39: :: VECTSP_1:39  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable left-distributive doubleLoopStr
for x being Element of F holds (0. F) * x = 0. F
proof end;

theorem Th40: :: VECTSP_1:40  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable right-distributive doubleLoopStr
for x, y being Element of F holds x * (- y) = - (x * y)
proof end;

theorem Th41: :: VECTSP_1:41  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable left-distributive doubleLoopStr
for x, y being Element of F holds (- x) * y = - (x * y)
proof end;

theorem Th42: :: VECTSP_1:42  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable distributive doubleLoopStr
for x, y being Element of F holds (- x) * (- y) = x * y
proof end;

theorem :: VECTSP_1:43  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable right-distributive doubleLoopStr
for x, y, z being Element of F holds x * (y - z) = (x * y) - (x * z)
proof end;

theorem Th44: :: VECTSP_1:44  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable associative commutative distributive left_unital Field-like doubleLoopStr
for x, y being Element of F holds
( x * y = 0. F iff ( x = 0. F or y = 0. F ) )
proof end;

theorem :: VECTSP_1:45  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for K being non empty add-associative right_zeroed right_complementable left-distributive doubleLoopStr
for a, b, c being Element of K holds (a - b) * c = (a * c) - (b * c)
proof end;

definition
let F be 1-sorted ;
attr c2 is strict;
struct VectSpStr of F -> LoopStr ;
aggr VectSpStr(# carrier, add, Zero, lmult #) -> VectSpStr of F;
sel lmult c2 -> Function of [:the carrier of F,the carrier of c2:],the carrier of c2;
end;

registration
let F be 1-sorted ;
cluster non empty strict VectSpStr of F;
existence
ex b1 being VectSpStr of F st
( not b1 is empty & b1 is strict )
proof end;
end;

registration
let F be 1-sorted ;
let A be non empty set ;
let a be BinOp of A;
let Z be Element of A;
let l be Function of [:the carrier of F,A:],A;
cluster VectSpStr(# A,a,Z,l #) -> non empty ;
coherence
not VectSpStr(# A,a,Z,l #) is empty
proof end;
end;

definition
let F be 1-sorted ;
mode Scalar of F is Element of F;
end;

definition
let F be 1-sorted ;
let VS be VectSpStr of F;
mode Scalar of VS is Scalar of F;
mode Vector of VS is Element of VS;
end;

definition
let F be non empty 1-sorted ;
let V be non empty VectSpStr of F;
let x be Element of F;
let v be Element of V;
func x * v -> Element of V equals :: VECTSP_1:def 24
the lmult of V . x,v;
coherence
the lmult of V . x,v is Element of V
;
end;

:: deftheorem defines * VECTSP_1:def 24 :
for F being non empty 1-sorted
for V being non empty VectSpStr of F
for x being Element of F
for v being Element of V holds x * v = the lmult of V . x,v;

definition
let F be non empty LoopStr ;
func comp F -> UnOp of the carrier of F means :: VECTSP_1:def 25
for x being Element of F holds it . x = - x;
existence
ex b1 being UnOp of the carrier of F st
for x being Element of F holds b1 . x = - x
proof end;
uniqueness
for b1, b2 being UnOp of the carrier of F st ( for x being Element of F holds b1 . x = - x ) & ( for x being Element of F holds b2 . x = - x ) holds
b1 = b2
proof end;
end;

:: deftheorem defines comp VECTSP_1:def 25 :
for F being non empty LoopStr
for b2 being UnOp of the carrier of F holds
( b2 = comp F iff for x being Element of F holds b2 . x = - x );

Lm4: now
let F be non empty Abelian add-associative right_zeroed right_complementable associative distributive left_unital doubleLoopStr ; :: thesis: for MLT being Function of [:the carrier of F,the carrier of F:],the carrier of F holds VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) is AbGroup
let MLT be Function of [:the carrier of F,the carrier of F:],the carrier of F; :: thesis: VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) is AbGroup
set GF = VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #);
for x, y, z being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) holds
( x + y = y + x & (x + y) + z = x + (y + z) & x + (0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)) = x & ex x' being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) st x + x' = 0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) )
proof
let x, y, z be Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #); :: thesis: ( x + y = y + x & (x + y) + z = x + (y + z) & x + (0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)) = x & ex x' being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) st x + x' = 0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) )
reconsider x' = x, y' = y, z' = z as Element of F ;
thus x + y = the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,y by RLVECT_1:5
.= y' + x' by RLVECT_1:5
.= the add of F . y',x' by RLVECT_1:5
.= y + x by RLVECT_1:5 ; :: thesis: ( (x + y) + z = x + (y + z) & x + (0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)) = x & ex x' being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) st x + x' = 0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) )
thus (x + y) + z = the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . (x + y),z by RLVECT_1:5
.= the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . (the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,y),z by RLVECT_1:5
.= the add of F . (x' + y'),z' by RLVECT_1:5
.= (x' + y') + z' by RLVECT_1:5
.= x' + (y' + z') by RLVECT_1:def 6
.= the add of F . x',(y' + z') by RLVECT_1:5
.= the add of F . x',(the add of F . y',z') by RLVECT_1:5
.= the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,(y + z) by RLVECT_1:5
.= x + (y + z) by RLVECT_1:5 ; :: thesis: ( x + (0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)) = x & ex x' being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) st x + x' = 0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) )
thus x + (0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)) = the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,(0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)) by RLVECT_1:5
.= the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,the Zero of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)
.= x' + (0. F) by RLVECT_1:5
.= x by RLVECT_1:10 ; :: thesis: ex x' being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) st x + x' = 0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)
consider t being Element of F such that
A1: x' + t = 0. F by RLVECT_1:def 8;
reconsider t' = t as Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) ;
take t' ; :: thesis: x + t' = 0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #)
thus x + t' = the add of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,t' by RLVECT_1:5
.= x' + t by RLVECT_1:5
.= 0. VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) by A1 ; :: thesis: verum
end;
hence VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) is AbGroup by RLVECT_1:def 5, RLVECT_1:def 6, RLVECT_1:def 7, RLVECT_1:def 8; :: thesis: verum
end;

Lm5: now
let F be non empty add-associative right_zeroed right_complementable associative distributive left_unital doubleLoopStr ; :: thesis: for MLT being Function of [:the carrier of F,the carrier of F:],the carrier of F st MLT = the mult of F holds
for x, y being Element of F
for v, w being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) holds
( x * (v + w) = (x * v) + (x * w) & (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v )

let MLT be Function of [:the carrier of F,the carrier of F:],the carrier of F; :: thesis: ( MLT = the mult of F implies for x, y being Element of F
for v, w being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) holds
( x * (v + w) = (x * v) + (x * w) & (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v ) )

assume A1: MLT = the mult of F ; :: thesis: for x, y being Element of F
for v, w being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) holds
( x * (v + w) = (x * v) + (x * w) & (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v )

set LS = VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #);
let x, y be Element of F; :: thesis: for v, w being Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) holds
( x * (v + w) = (x * v) + (x * w) & (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v )

let v, w be Element of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #); :: thesis: ( x * (v + w) = (x * v) + (x * w) & (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v )
reconsider v' = v, w' = w as Element of F ;
thus x * (v + w) = the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,(v + w)
.= MLT . x,(the add of F . v',w') by RLVECT_1:5
.= MLT . x,(v' + w') by RLVECT_1:5
.= x * (v' + w') by A1
.= (x * v') + (x * w') by Def18
.= the add of F . (x * v'),(x * w') by RLVECT_1:5
.= the add of F . (MLT . x,v'),(x * w') by A1
.= the add of F . (the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,v),(the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,w) by A1
.= the add of F . (x * v),(x * w)
.= (x * v) + (x * w) by RLVECT_1:5 ; :: thesis: ( (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v )
thus (x + y) * v = the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . (x + y),v
.= (x + y) * v' by A1
.= (x * v') + (y * v') by Def18
.= the add of F . (x * v'),(y * v') by RLVECT_1:5
.= the add of F . (MLT . x,v'),(y * v') by A1
.= the add of F . (the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,v),(the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . y,v) by A1
.= the add of F . (x * v),(y * v)
.= (x * v) + (y * v) by RLVECT_1:5 ; :: thesis: ( (x * y) * v = x * (y * v) & (1. F) * v = v )
thus (x * y) * v = the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . (x * y),v
.= (x * y) * v' by A1
.= x * (y * v') by GROUP_1:def 4
.= MLT . x,(y * v') by A1
.= the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,(the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . y,v) by A1
.= the lmult of VectSpStr(# the carrier of F,the add of F,the Zero of F,MLT #) . x,(y * v)
.= x * (y * v) ; :: thesis: (1. F) * v = v
thus (1. F) * v = MLT . (1. F),v'
.= (1. F) * v' by A1
.= v by Def19 ; :: thesis: verum
end;

definition
let F be non empty doubleLoopStr ;
let IT be non empty VectSpStr of F;
attr IT is VectSp-like means :Def26: :: VECTSP_1:def 26
for x, y being Element of F
for v, w being Element of IT holds
( x * (v + w) = (x * v) + (x * w) & (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v );
end;

:: deftheorem Def26 defines VectSp-like VECTSP_1:def 26 :
for F being non empty doubleLoopStr
for IT being non empty VectSpStr of F holds
( IT is VectSp-like iff for x, y being Element of F
for v, w being Element of IT holds
( x * (v + w) = (x * v) + (x * w) & (x + y) * v = (x * v) + (y * v) & (x * y) * v = x * (y * v) & (1. F) * v = v ) );

registration
let F be non empty Abelian add-associative right_zeroed right_complementable associative distributive left_unital doubleLoopStr ;
cluster non empty Abelian add-associative right_zeroed right_complementable strict VectSp-like VectSpStr of F;
existence
ex b1 being non empty VectSpStr of F st
( b1 is VectSp-like & b1 is add-associative & b1 is right_zeroed & b1 is right_complementable & b1 is Abelian & b1 is strict )
proof end;
end;

definition
let F be non empty Abelian add-associative right_zeroed right_complementable associative distributive left_unital doubleLoopStr ;
mode VectSp of F is non empty Abelian add-associative right_zeroed right_complementable VectSp-like VectSpStr of F;
end;

theorem :: VECTSP_1:46  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:47  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:48  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:49  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:50  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:51  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:52  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:53  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:54  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:55  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:56  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:57  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:58  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th59: :: VECTSP_1:59  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty Abelian add-associative right_zeroed right_complementable associative distributive left_unital doubleLoopStr
for x being Element of F
for V being non empty add-associative right_zeroed right_complementable VectSp-like VectSpStr of F
for v being Element of V holds
( (0. F) * v = 0. V & (- (1. F)) * v = - v & x * (0. V) = 0. V )
proof end;

theorem :: VECTSP_1:60  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being Field
for x being Element of F
for V being non empty add-associative right_zeroed right_complementable VectSp-like VectSpStr of F
for v being Element of V holds
( x * v = 0. V iff ( x = 0. F or v = 0. V ) )
proof end;

theorem :: VECTSP_1:61  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:62  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:63  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for V being non empty add-associative right_zeroed right_complementable LoopStr
for v, w being Element of V holds
( v + w = 0. V iff - v = w )
proof end;

Lm6: for V being non empty add-associative right_zeroed right_complementable LoopStr
for v, w being Element of V holds - (w + (- v)) = v - w
proof end;

Lm7: for V being non empty add-associative right_zeroed right_complementable LoopStr
for v, w being Element of V holds - ((- v) - w) = w + v
proof end;

theorem :: VECTSP_1:64  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for V being non empty add-associative right_zeroed right_complementable LoopStr
for u, v, w being Element of V holds
( - (v + w) = (- w) - v & - (w + (- v)) = v - w & - (v - w) = w + (- v) & - ((- v) - w) = w + v & u - (w + v) = (u - v) - w ) by Lm6, Lm7, RLVECT_1:41, RLVECT_1:44, RLVECT_1:47;

theorem :: VECTSP_1:65  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for V being non empty add-associative right_zeroed right_complementable LoopStr
for v being Element of V holds
( (0. V) - v = - v & v - (0. V) = v ) by RLVECT_1:26, RLVECT_1:27;

theorem Th66: :: VECTSP_1:66  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable LoopStr
for x, y being Element of F holds
( ( x + (- y) = 0. F implies x = y ) & ( x = y implies x + (- y) = 0. F ) & ( x - y = 0. F implies x = y ) & ( x = y implies x - y = 0. F ) )
proof end;

theorem :: VECTSP_1:67  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being Field
for x being Element of F
for V being non empty add-associative right_zeroed right_complementable VectSp-like VectSpStr of F
for v being Element of V st x <> 0. F holds
(x " ) * (x * v) = v
proof end;

theorem Th68: :: VECTSP_1:68  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty Abelian add-associative right_zeroed right_complementable associative distributive left_unital doubleLoopStr
for V being non empty add-associative right_zeroed right_complementable VectSp-like VectSpStr of F
for x being Element of F
for v, w being Element of V holds
( - (x * v) = (- x) * v & w - (x * v) = w + ((- x) * v) )
proof end;

registration
cluster non empty commutative left_unital -> non empty right_unital multLoopStr ;
coherence
for b1 being non empty multLoopStr st b1 is commutative & b1 is left_unital holds
b1 is right_unital
proof end;
end;

theorem Th69: :: VECTSP_1:69  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty Abelian add-associative right_zeroed right_complementable associative right_unital distributive left_unital doubleLoopStr
for V being non empty add-associative right_zeroed right_complementable VectSp-like VectSpStr of F
for x being Element of F
for v being Element of V holds x * (- v) = - (x * v)
proof end;

theorem :: VECTSP_1:70  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty Abelian add-associative right_zeroed right_complementable associative right_unital distributive left_unital doubleLoopStr
for V being non empty add-associative right_zeroed right_complementable VectSp-like VectSpStr of F
for x being Element of F
for v, w being Element of V holds x * (v - w) = (x * v) - (x * w)
proof end;

theorem :: VECTSP_1:71  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:72  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:73  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable associative commutative distributive left_unital Field-like non degenerated doubleLoopStr
for x being Element of F st x <> 0. F holds
(x " ) " = x
proof end;

theorem :: VECTSP_1:74  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being Field
for x being Element of F st x <> 0. F holds
( x " <> 0. F & - (x " ) <> 0. F )
proof end;

theorem :: VECTSP_1:75  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:76  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:77  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th78: :: VECTSP_1:78  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
(1. F_Real ) + (1. F_Real ) <> 0. F_Real
proof end;

definition
let IT be non empty LoopStr ;
canceled;
attr IT is Fanoian means :Def28: :: VECTSP_1:def 28
for a being Element of IT st a + a = 0. IT holds
a = 0. IT;
end;

:: deftheorem VECTSP_1:def 27 :
canceled;

:: deftheorem Def28 defines Fanoian VECTSP_1:def 28 :
for IT being non empty LoopStr holds
( IT is Fanoian iff for a being Element of IT st a + a = 0. IT holds
a = 0. IT );

registration
cluster non empty Fanoian LoopStr ;
existence
ex b1 being non empty LoopStr st b1 is Fanoian
proof end;
end;

definition
let F be non empty add-associative right_zeroed right_complementable associative commutative distributive left_unital Field-like non degenerated doubleLoopStr ;
redefine attr F is Fanoian means :Def29: :: VECTSP_1:def 29
(1. F) + (1. F) <> 0. F;
compatibility
( F is Fanoian iff (1. F) + (1. F) <> 0. F )
proof end;
end;

:: deftheorem Def29 defines Fanoian VECTSP_1:def 29 :
for F being non empty add-associative right_zeroed right_complementable associative commutative distributive left_unital Field-like non degenerated doubleLoopStr holds
( F is Fanoian iff (1. F) + (1. F) <> 0. F );

registration
cluster unital strict right_unital Fanoian doubleLoopStr ;
existence
ex b1 being Field st
( b1 is strict & b1 is Fanoian )
proof end;
end;

theorem :: VECTSP_1:79  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:80  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th81: :: VECTSP_1:81  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable LoopStr
for a, b being Element of F holds - (a - b) = b - a by RLVECT_1:47;

theorem :: VECTSP_1:82  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:83  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:84  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable LoopStr
for a, b being Element of F st a - b = 0. F holds
a = b by Th66;

theorem :: VECTSP_1:85  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th86: :: VECTSP_1:86  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable LoopStr
for a being Element of F st - a = 0. F holds
a = 0. F
proof end;

theorem :: VECTSP_1:87  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable LoopStr
for a, b being Element of F st a - b = 0. F holds
b - a = 0. F
proof end;

theorem :: VECTSP_1:88  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being Field
for a, b, c being Element of F holds
( ( a <> 0. F & (a * c) - b = 0. F implies c = b * (a " ) ) & ( a <> 0. F & b - (c * a) = 0. F implies c = b * (a " ) ) )
proof end;

theorem :: VECTSP_1:89  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable LoopStr
for a, b being Element of F holds a + b = - ((- b) + (- a))
proof end;

theorem :: VECTSP_1:90  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for F being non empty add-associative right_zeroed right_complementable LoopStr
for a, b, c being Element of F holds (b + a) - (c + a) = b - c
proof end;

theorem :: VECTSP_1:91  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: VECTSP_1:92  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for G being non empty add-associative right_zeroed right_complementable LoopStr
for v, w being Element of G holds - ((- v) + w) = (- w) + v
proof end;

theorem :: VECTSP_1:93  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for G being non empty Abelian add-associative right_zeroed right_complementable LoopStr
for u, v, w being Element of G holds (u - v) - w = (u - w) - v
proof end;

theorem :: VECTSP_1:94  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for B being AbGroup holds HGrStr(# the carrier of B,the add of B #) is commutative Group
proof end;