kdrag.property
Generic properties like associativity, commutativity, idempotence, etc.
Classes
|
forall x y, rel(x, y) and rel(y, x) implies x = y |
|
forall x y z, f(f(x,y),z) = f(x,f(y,z)) |
|
forall x y, rel(x, y) implies not rel(y, x) |
|
forall x y, f(x,y) = f(y,x) |
|
forall x, f(x,x) = x |
|
|
|
forall x, not rel(x, x) |
|
forall x, f(e,x) = x |
|
forall x, rel(x, x) |
|
forall x, f(x,e) = x |
|
forall x y, rel(x, y) or rel(y, x) |
- class kdrag.property.Antisymm(*args, **kwargs)
Bases:
Protocol
forall x y, rel(x, y) and rel(y, x) implies x = y
- rel: FuncDeclRef
- class kdrag.property.Assoc(*args, **kwargs)
Bases:
Protocol
forall x y z, f(f(x,y),z) = f(x,f(y,z))
- f: FuncDeclRef
- class kdrag.property.Asymm(*args, **kwargs)
Bases:
Protocol
forall x y, rel(x, y) implies not rel(y, x)
- rel: FuncDeclRef
- class kdrag.property.Comm(*args, **kwargs)
Bases:
Protocol
forall x y, f(x,y) = f(y,x)
- f: FuncDeclRef
- class kdrag.property.Identity(*args, **kwargs)
Bases:
LeftIdentity
,RightIdentity
,Protocol
- e: ExprRef
- f: FuncDeclRef
- class kdrag.property.Irrefl(*args, **kwargs)
Bases:
Protocol
forall x, not rel(x, x)
- rel: FuncDeclRef
- class kdrag.property.LeftIdentity(*args, **kwargs)
Bases:
Protocol
forall x, f(e,x) = x
- e: ExprRef
- f: FuncDeclRef