Finite-support semantics #
FiniteSupport M is the idempotent support carrier used by monotone
arithmetic interpretations. Addition unions supports, while multiplication
takes all pairwise products. No algebraic laws on M are imposed here: the
arithmetic circuit syntax only needs total binary operations, and concrete
applications can add monoid or exponent-vector structure as needed.
A semantic value represented only by its finite set of monomials.
- monomials : Finset M
Monomials present with nonzero coefficient.
Instances For
@[instance_reducible]
instance
Algebraic.instDecidableEqFiniteSupport
{M✝ : Type u_1}
[DecidableEq M✝]
:
DecidableEq (FiniteSupport M✝)
def
Algebraic.instDecidableEqFiniteSupport.decEq
{M✝ : Type u_1}
[DecidableEq M✝]
(x✝ x✝¹ : FiniteSupport M✝)
:
Equations
Instances For
The support consisting of one monomial.
Instances For
@[instance_reducible]
instance
Algebraic.FiniteSupport.instAddOfDecidableEq
{M : Type u_1}
[DecidableEq M]
:
Add (FiniteSupport M)
Equations
- Algebraic.FiniteSupport.instAddOfDecidableEq = { add := fun (left right : Algebraic.FiniteSupport M) => { monomials := left.monomials ∪ right.monomials } }
@[instance_reducible]
instance
Algebraic.FiniteSupport.instMulOfDecidableEq
{M : Type u_1}
[DecidableEq M]
[Mul M]
:
Mul (FiniteSupport M)
Equations
- One or more equations did not get rendered due to their size.
@[simp]
theorem
Algebraic.FiniteSupport.monomials_add
{M : Type u_1}
[DecidableEq M]
(left right : FiniteSupport M)
:
theorem
Algebraic.FiniteSupport.mem_add
{M : Type u_1}
[DecidableEq M]
(monomial : M)
(left right : FiniteSupport M)
:
@[simp]
theorem
Algebraic.FiniteSupport.monomials_mul
{M : Type u_1}
[DecidableEq M]
[Mul M]
(left right : FiniteSupport M)
:
theorem
Algebraic.FiniteSupport.mem_mul
{M : Type u_1}
[DecidableEq M]
[Mul M]
(monomial : M)
(left right : FiniteSupport M)
:
theorem
Algebraic.FiniteSupport.card_mul_le
{M : Type u_1}
[DecidableEq M]
[Mul M]
(left right : FiniteSupport M)
:
Pairwise multiplication produces at most the Cartesian-product number of monomials.