package tezos-plonk

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Monomials are represented as mapping from variables to their exponent All monomials created here have non-negative exponents This is to ensure the unicity of the writting of polynomials.

val encoding : t Data_encoding.t
val one : t

The unit monomial

The "variable" monomial

Returns the sorted list of variables occuring in the object

val compare : t -> t -> int

Comparison bewteen monomials Uses the lexicographical ordering on monomials, with lexicographical ordering on the variables. The ordering on the variables should not matter. What matters is that the constant monomial is the minimum for this order.

val equal : t -> t -> bool

Equality, which assumes no zero exponents

Returns the degree of the given variable in the given monomial

val mul : t -> t -> t

Multiplies two monomials

val apply : t -> spec -> (scalar * t) option

Partial application in a monomial. Returns None if the result of the application would be 0 Otherwise, returns a non-zero coefficient and the rest of the monomial.

val to_ascii : t -> string option

Conversion to printable strings. None is for one

val pp : Stdlib.Format.formatter -> t -> unit
val add_prefix : string -> t -> t
module MonomialOperators : sig ... end

Infix operators