let n be non empty Nat; :: thesis: for J being non empty non void Signature

for T being non-empty MSAlgebra over J

for X being V3() GeneratorSet of T

for S1 being non empty non void b_{1} -extension n PC-correct QC-correct QCLangSignature over Union X

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let J be non empty non void Signature; :: thesis: for T being non-empty MSAlgebra over J

for X being V3() GeneratorSet of T

for S1 being non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let T be non-empty MSAlgebra over J; :: thesis: for X being V3() GeneratorSet of T

for S1 being non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let X be V3() GeneratorSet of T; :: thesis: for S1 being non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let S1 be non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X; :: thesis: for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let x, y be Element of Union X; :: thesis: for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let x0, y0 be Element of Union (X extended_by ({}, the carrier of S1)); :: thesis: for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let L be non-empty Language of X extended_by ({}, the carrier of S1),S1; :: thesis: for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let G1 be QC-theory_with_equality of L; :: thesis: for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let A be Formula of L; :: thesis: for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let s be SortSymbol of S1; :: thesis: ( L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s implies (A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1 )

assume that

A0: L is subst-correct and

A1: ( x = x0 & x0 in X . s & y = y0 & y0 in X . s ) ; :: thesis: (A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

( s in dom X & dom X = the carrier of J ) by A1, FUNCT_1:def 2, PARTFUN1:def 2;

then ( X . s c= the Sorts of T . s & the Sorts of T . s = the Sorts of L . s ) by Th16, PBOOLE:def 2, PBOOLE:def 18;

then reconsider t1 = x, t2 = y as Element of L,s by A1;

( (A \and (x '=' (y,L))) \imp (A / (x0,y0)) in G1 & ((A \and (t1 '=' (t2,L))) \imp (A / (x0,y0))) \imp (A \imp ((t1 '=' (t2,L)) \imp (A / (x0,y0)))) in G1 ) by A0, A1, ThTwo, Th47;

then ( A \imp ((t1 '=' (t2,L)) \imp (A / (x0,y0))) in G1 & ((t1 '=' (t2,L)) \imp (A / (x0,y0))) \imp ((\not (A / (x0,y0))) \imp (\not (t1 '=' (t2,L)))) in G1 ) by Def38, Th57;

then ( A \imp ((\not (A / (x0,y0))) \imp (\not (t1 '=' (t2,L)))) in G1 & (A \imp ((\not (A / (x0,y0))) \imp (\not (t1 '=' (t2,L))))) \imp ((A \and (\not (A / (x0,y0)))) \imp (\not (t1 '=' (t2,L)))) in G1 ) by Th45, Th48;

hence (A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1 by Def38; :: thesis: verum

for T being non-empty MSAlgebra over J

for X being V3() GeneratorSet of T

for S1 being non empty non void b

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let J be non empty non void Signature; :: thesis: for T being non-empty MSAlgebra over J

for X being V3() GeneratorSet of T

for S1 being non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let T be non-empty MSAlgebra over J; :: thesis: for X being V3() GeneratorSet of T

for S1 being non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let X be V3() GeneratorSet of T; :: thesis: for S1 being non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X

for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let S1 be non empty non void J -extension n PC-correct QC-correct QCLangSignature over Union X; :: thesis: for x, y being Element of Union X

for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let x, y be Element of Union X; :: thesis: for x0, y0 being Element of Union (X extended_by ({}, the carrier of S1))

for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let x0, y0 be Element of Union (X extended_by ({}, the carrier of S1)); :: thesis: for L being non-empty Language of X extended_by ({}, the carrier of S1),S1

for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let L be non-empty Language of X extended_by ({}, the carrier of S1),S1; :: thesis: for G1 being QC-theory_with_equality of L

for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let G1 be QC-theory_with_equality of L; :: thesis: for A being Formula of L

for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let A be Formula of L; :: thesis: for s being SortSymbol of S1 st L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s holds

(A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

let s be SortSymbol of S1; :: thesis: ( L is subst-correct & x = x0 & x0 in X . s & y = y0 & y0 in X . s implies (A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1 )

assume that

A0: L is subst-correct and

A1: ( x = x0 & x0 in X . s & y = y0 & y0 in X . s ) ; :: thesis: (A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1

( s in dom X & dom X = the carrier of J ) by A1, FUNCT_1:def 2, PARTFUN1:def 2;

then ( X . s c= the Sorts of T . s & the Sorts of T . s = the Sorts of L . s ) by Th16, PBOOLE:def 2, PBOOLE:def 18;

then reconsider t1 = x, t2 = y as Element of L,s by A1;

( (A \and (x '=' (y,L))) \imp (A / (x0,y0)) in G1 & ((A \and (t1 '=' (t2,L))) \imp (A / (x0,y0))) \imp (A \imp ((t1 '=' (t2,L)) \imp (A / (x0,y0)))) in G1 ) by A0, A1, ThTwo, Th47;

then ( A \imp ((t1 '=' (t2,L)) \imp (A / (x0,y0))) in G1 & ((t1 '=' (t2,L)) \imp (A / (x0,y0))) \imp ((\not (A / (x0,y0))) \imp (\not (t1 '=' (t2,L)))) in G1 ) by Def38, Th57;

then ( A \imp ((\not (A / (x0,y0))) \imp (\not (t1 '=' (t2,L)))) in G1 & (A \imp ((\not (A / (x0,y0))) \imp (\not (t1 '=' (t2,L))))) \imp ((A \and (\not (A / (x0,y0)))) \imp (\not (t1 '=' (t2,L)))) in G1 ) by Th45, Th48;

hence (A \and (\not (A / (x0,y0)))) \imp (\not (x '=' (y,L))) in G1 by Def38; :: thesis: verum