:: BCI-Algebras with Condition (S) and Their Properties
:: by Tao Sun , Junjie Zhao and Xiquan Liang
::
:: Received November 24, 2007
:: Copyright (c) 2007-2016 Association of Mizar Users
:: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland).
:: This code can be distributed under the GNU General Public Licence
:: version 3.0 or later, or the Creative Commons Attribution-ShareAlike
:: License version 3.0 or later, subject to the binding interpretation
:: detailed in file COPYING.interpretation.
:: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these
:: licenses, or see http://www.gnu.org/licenses/gpl.html and
:: http://creativecommons.org/licenses/by-sa/3.0/.
environ
vocabularies BCIALG_1, STRUCT_0, BINOP_1, SUBSET_1, XBOOLE_0, RELAT_1,
FUNCT_1, FUNCT_5, ZFMISC_1, NUMBERS, FINSEQ_1, XXREAL_0, SUPINF_2,
VECTSP_1, ALGSTR_0, RLVECT_1, ARYTM_3, SETWISEO, GROUP_1, CARD_1, NAT_1,
NEWTON, POWER, FINSOP_1, ORDINAL4, BCIALG_2, TARSKI, FILTER_0, BCIALG_4;
notations TARSKI, ZFMISC_1, XBOOLE_0, SUBSET_1, BINOP_1, FUNCT_5, STRUCT_0,
ALGSTR_0, BCIALG_1, RELAT_1, ORDINAL1, NUMBERS, XXREAL_0, FINSEQ_1,
FINSOP_1, SETWISEO, FUNCT_1, FUNCT_2, FINSEQ_4, XCMPLX_0, RLVECT_1,
NAT_1, BCIALG_2, VECTSP_1;
constructors BINOP_1, VECTSP_2, FINSOP_1, SETWISEO, FINSEQ_4, BCIALG_2,
FUNCT_5, NAT_1;
registrations BCIALG_1, RELAT_1, STRUCT_0, ORDINAL1, XXREAL_0, VECTSP_1,
BCIALG_2, CARD_1, XCMPLX_0, NAT_1;
requirements SUBSET, BOOLE, NUMERALS, ARITHM;
begin :: Definition and Elementary Properties of BCI-Algebras with Condition(S)
definition
struct (BCIStr_0,ZeroStr) BCIStr_1 (# carrier -> set, ExternalDiff,
InternalDiff -> BinOp of the carrier, ZeroF -> Element of the carrier #);
end;
registration
cluster non empty strict for BCIStr_1;
end;
definition
let A be BCIStr_1;
let x,y be Element of A;
func x * y -> Element of A equals
:: BCIALG_4:def 1
(the ExternalDiff of A).(x,y);
end;
definition
let IT be non empty BCIStr_1;
attr IT is with_condition_S means
:: BCIALG_4:def 2
for x,y,z being Element of IT holds (x\y)\z = x\(y*z);
end;
definition
func BCI_S-EXAMPLE -> BCIStr_1 equals
:: BCIALG_4:def 3
BCIStr_1 (# {0}, op2, op2, op0 #);
end;
registration
cluster BCI_S-EXAMPLE -> strict 1-element;
end;
registration
cluster BCI_S-EXAMPLE -> being_B being_C being_I being_BCI-4 being_BCK-5
with_condition_S;
end;
registration
cluster strict being_B being_C being_I being_BCI-4 with_condition_S for non
empty BCIStr_1;
end;
definition
mode BCI-Algebra_with_Condition(S) is being_B being_C being_I being_BCI-4
with_condition_S non empty BCIStr_1;
end;
reserve X for non empty BCIStr_1;
reserve d for Element of X;
reserve n,m,k for Nat;
reserve f for sequence of the carrier of X;
definition
let X be BCI-Algebra_with_Condition(S);
let x,y be Element of X;
func Condition_S(x,y) -> non empty Subset of X equals
:: BCIALG_4:def 4
{t where t is Element
of X: t\x <= y};
end;
theorem :: BCIALG_4:1
for X be BCI-Algebra_with_Condition(S),x,y,u,v being Element of X st u
in Condition_S(x,y) & v <= u holds v in Condition_S(x,y);
theorem :: BCIALG_4:2
for X being BCI-Algebra_with_Condition(S) holds for x,y being Element
of X holds ex a be Element of Condition_S(x,y) st for z being Element of
Condition_S(x,y) holds z <= a;
theorem :: BCIALG_4:3
X is BCI-algebra & (for x,y being Element of X holds ((x*y)\x <= y &
for t being Element of X st t\x <= y holds t <= (x*y))) iff X is
BCI-Algebra_with_Condition(S);
definition
let X be p-Semisimple BCI-algebra;
func Adjoint_pGroup X -> strict AbGroup means
:: BCIALG_4:def 5
the carrier of it = the
carrier of X & (for x,y being Element of X holds (the addF of it).(x,y) = x\(0.
X\y)) & 0.it = 0.X;
end;
::$CT
theorem :: BCIALG_4:5
for X being BCI-algebra holds X is p-Semisimple iff for x,y being
Element of X st x\y = 0.X holds x=y;
theorem :: BCIALG_4:6
for X being BCI-Algebra_with_Condition(S) st X is p-Semisimple holds
for x,y being Element of X holds x*y = x\(0.X\y);
theorem :: BCIALG_4:7 :: Commutativity
for X being BCI-Algebra_with_Condition(S) holds for x,y being
Element of X holds x*y = y*x;
theorem :: BCIALG_4:8 :: Isotonic Property
for X being BCI-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds x <= y implies x*z <= y*z & z*x <= z*y;
theorem :: BCIALG_4:9 :: Unit Element
for X being BCI-Algebra_with_Condition(S) holds for x being
Element of X holds 0.X*x = x & x*0.X = x;
theorem :: BCIALG_4:10 :: Associativity
for X being BCI-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds (x*y)*z = x*(y*z);
theorem :: BCIALG_4:11
for X being BCI-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds (x*y)*z = (x*z)*y;
theorem :: BCIALG_4:12
for X being BCI-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds (x\y)\z = x\(y*z);
theorem :: BCIALG_4:13
for X being BCI-Algebra_with_Condition(S) holds for x,y being
Element of X holds y <= x*(y\x);
theorem :: BCIALG_4:14
for X being BCI-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds (x*z)\(y*z) <= x\y;
theorem :: BCIALG_4:15
for X being BCI-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds x\y <= z iff x <= y*z;
theorem :: BCIALG_4:16
for X being BCI-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds x\y <= (x\z)*(z\y);
registration
let X be BCI-Algebra_with_Condition(S);
cluster the ExternalDiff of X -> commutative associative;
end;
theorem :: BCIALG_4:17
for X being BCI-Algebra_with_Condition(S) holds 0.X
is_a_unity_wrt the ExternalDiff of X;
theorem :: BCIALG_4:18
for X being BCI-Algebra_with_Condition(S) holds the_unity_wrt the
ExternalDiff of X = 0.X;
theorem :: BCIALG_4:19
for X being BCI-Algebra_with_Condition(S) holds the ExternalDiff
of X is having_a_unity;
definition
let X be BCI-Algebra_with_Condition(S);
func power X -> Function of [:the carrier of X,NAT:], the carrier of X means
:: BCIALG_4:def 6
for h being Element of X holds it.(h,0) = 0.X &
for n holds it.(h,n + 1) = it.(h,n) * h;
end;
definition
let X be BCI-Algebra_with_Condition(S);
let x be Element of X;
let n be Nat;
func x |^ n -> Element of X equals
:: BCIALG_4:def 7
power(X).(x,n);
end;
theorem :: BCIALG_4:20
for X being BCI-Algebra_with_Condition(S) holds for x being Element of
X holds x |^ 0 = 0.X;
theorem :: BCIALG_4:21
for X being BCI-Algebra_with_Condition(S) holds for x being Element of
X holds x |^ (n + 1) = (x|^n) * x;
theorem :: BCIALG_4:22
for X being BCI-Algebra_with_Condition(S) holds for x being
Element of X holds x |^ 1 = x;
theorem :: BCIALG_4:23
for X being BCI-Algebra_with_Condition(S) holds for x being
Element of X holds x |^ 2 = x * x;
theorem :: BCIALG_4:24
for X being BCI-Algebra_with_Condition(S) holds for x being Element of
X holds x |^ 3 = x * x * x;
theorem :: BCIALG_4:25
for X being BCI-Algebra_with_Condition(S) holds (0.X) |^ 2 = 0.X;
theorem :: BCIALG_4:26
for X being BCI-Algebra_with_Condition(S) holds (0.X)|^n = 0.X;
theorem :: BCIALG_4:27
for X being BCI-Algebra_with_Condition(S) holds for x,a being Element
of X holds ((x\a)\a)\a = x\(a|^3);
theorem :: BCIALG_4:28
for X being BCI-Algebra_with_Condition(S) holds for x,a being Element
of X holds (x,a) to_power n = x\(a|^n);
definition
let X be non empty BCIStr_1;
let F be FinSequence of the carrier of X;
func Product_S F -> Element of X equals
:: BCIALG_4:def 8
(the ExternalDiff of X) "**" F;
end;
theorem :: BCIALG_4:29
(the ExternalDiff of X) "**" <* d *> = d;
theorem :: BCIALG_4:30
for X being BCI-Algebra_with_Condition(S), F1,F2 being FinSequence of
the carrier of X holds Product_S(F1 ^ F2) = Product_S(F1) * Product_S(F2);
theorem :: BCIALG_4:31
for X being BCI-Algebra_with_Condition(S), F being FinSequence of the
carrier of X, a being Element of X holds Product_S(F ^ <* a *>) = Product_S(F)
* a;
theorem :: BCIALG_4:32
for X being BCI-Algebra_with_Condition(S), F being FinSequence of the
carrier of X, a being Element of X holds Product_S(<* a *> ^ F) = a * Product_S
(F);
theorem :: BCIALG_4:33
for X being BCI-Algebra_with_Condition(S) holds for a1,a2 being
Element of X holds Product_S<*a1,a2*> = a1 * a2;
theorem :: BCIALG_4:34
for X being BCI-Algebra_with_Condition(S) holds for a1,a2,a3
being Element of X holds Product_S<*a1,a2,a3*> = a1 * a2 * a3;
theorem :: BCIALG_4:35
for X being BCI-Algebra_with_Condition(S) holds for x,a1,a2 being
Element of X holds (x\a1)\a2 = x\Product_S<*a1,a2*>;
theorem :: BCIALG_4:36
for X being BCI-Algebra_with_Condition(S) holds for x,a1,a2,a3 being
Element of X holds ((x\a1)\a2)\a3 = x\Product_S<*a1,a2,a3*>;
theorem :: BCIALG_4:37
for X being BCI-Algebra_with_Condition(S), a,b being Element of
AtomSet(X) holds for ma being Element of X st (for x being Element of BranchV(a
) holds x <= ma) holds ex mb being Element of X st for y being Element of
BranchV(b) holds y <= mb;
:: Commutative BCK-Algebras with Condition(S)
registration
cluster strict being_BCK-5 for BCI-Algebra_with_Condition(S);
end;
definition
mode BCK-Algebra_with_Condition(S) is being_BCK-5
BCI-Algebra_with_Condition(S);
end;
theorem :: BCIALG_4:38
for X being BCK-Algebra_with_Condition(S) holds for x,y being
Element of X holds x <= x*y & y <= x*y;
theorem :: BCIALG_4:39
for X being BCK-Algebra_with_Condition(S) holds for x,y,z being
Element of X holds ((x*y)\(y*z))\(z*x) = 0.X;
theorem :: BCIALG_4:40
for X being BCK-Algebra_with_Condition(S) holds for x,y being Element
of X holds (x\y)*(y\x) <= x*y;
theorem :: BCIALG_4:41
for X being BCK-Algebra_with_Condition(S) holds for x being Element of
X holds (x\0.X)*(0.X\x) = x;
definition
let IT be BCK-Algebra_with_Condition(S);
attr IT is commutative means
:: BCIALG_4:def 9
for x,y being Element of IT holds x\(x\y ) = y\(y\x);
end;
registration
cluster commutative for BCK-Algebra_with_Condition(S);
end;
theorem :: BCIALG_4:42
for X being non empty BCIStr_1 holds (X is commutative
BCK-Algebra_with_Condition(S) iff for x,y,z being Element of X holds x\(0.X\y)
= x & (x\z)\(x\y) = (y\z)\(y\x) & (x\y)\z = x\(y*z) );
theorem :: BCIALG_4:43
for X being commutative BCK-Algebra_with_Condition(S), a being Element
of X st a is greatest holds for x,y being Element of X holds x*y = a\((a\x)\y);
definition
let X be BCI-algebra;
let a be Element of X;
func Initial_section(a) -> non empty Subset of X equals
:: BCIALG_4:def 10
{t where t is
Element of X: t <= a};
end;
theorem :: BCIALG_4:44
for X being commutative BCK-Algebra_with_Condition(S), a,b,c being
Element of X st Condition_S(a,b) c= Initial_section(c) holds for x being
Element of Condition_S(a,b) holds x <= c\((c\a)\b);
:: Positive-Implicative BCK-Algebras with Condition(S)
definition
let IT be BCK-Algebra_with_Condition(S);
attr IT is positive-implicative means
:: BCIALG_4:def 11
for x,y being Element of IT holds (x\y)\y = x\y;
end;
registration
cluster positive-implicative for BCK-Algebra_with_Condition(S);
end;
theorem :: BCIALG_4:45
for X being BCK-Algebra_with_Condition(S) holds ( X is
positive-implicative iff for x being Element of X holds x*x = x );
theorem :: BCIALG_4:46
for X being BCK-Algebra_with_Condition(S) holds ( X is
positive-implicative iff for x,y being Element of X holds (x <= y implies x*y =
y) );
theorem :: BCIALG_4:47
for X being BCK-Algebra_with_Condition(S) holds ( X is
positive-implicative iff for x,y,z being Element of X holds (x*y)\z = (x\z)*(y\
z) );
theorem :: BCIALG_4:48
for X being BCK-Algebra_with_Condition(S) holds ( X is
positive-implicative iff for x,y being Element of X holds x*y = x*(y\x) );
theorem :: BCIALG_4:49
for X being positive-implicative BCK-Algebra_with_Condition(S)
holds for x,y being Element of X holds x = (x\y)*(x\(x\y));
definition
let IT be non empty BCIStr_1;
attr IT is being_SB-1 means
:: BCIALG_4:def 12
for x being Element of IT holds x * x = x;
attr IT is being_SB-2 means
:: BCIALG_4:def 13
for x,y being Element of IT holds x * y = y * x;
attr IT is being_SB-4 means
:: BCIALG_4:def 14
for x,y being Element of IT holds (x\y) * y = x * y;
end;
registration
cluster BCI_S-EXAMPLE -> being_SB-1 being_SB-2 being_SB-4 being_I
with_condition_S;
end;
registration
cluster strict being_SB-1 being_SB-2 being_SB-4 being_I with_condition_S for
non empty BCIStr_1;
end;
definition
mode semi-Brouwerian-algebra is being_SB-1 being_SB-2 being_SB-4 being_I
with_condition_S non empty BCIStr_1;
end;
theorem :: BCIALG_4:50
for X being non empty BCIStr_1 holds (X is positive-implicative
BCK-Algebra_with_Condition(S) iff X is semi-Brouwerian-algebra);
:: Implicative BCK-Algebras with Condition(S)
definition
let IT be BCK-Algebra_with_Condition(S);
attr IT is implicative means
:: BCIALG_4:def 15
for x,y being Element of IT holds x\(y\ x) = x;
end;
registration
cluster implicative for BCK-Algebra_with_Condition(S);
end;
theorem :: BCIALG_4:51
for X being BCK-Algebra_with_Condition(S) holds (X is
implicative iff X is commutative & X is positive-implicative );
theorem :: BCIALG_4:52
for X being BCK-Algebra_with_Condition(S) holds ( X is implicative iff
for x,y,z being Element of X holds x\(y\z) = ((x\y)\z)*(z\(z\x)) );