octez-libs.plompiler
Linear_algebra.Make_Module
aggregation
bare_functor_outputs
bare_sigs
bare_structs
communication
distribution
octez-libs.aplonk
octez-libs.base
octez-libs.base-test-helpers
octez-libs.bls12-381-hash
octez-libs.bls12-381-polynomial
octez-libs.bls12-381-signature
octez-libs.clic
octez-libs.context
octez-libs.crypto
octez-libs.crypto-dal
octez-libs.distributed-plonk
octez-libs.epoxy-tx
octez-libs.error-monad
octez-libs.event-logging
octez-libs.event-logging-test-helpers
octez-libs.expect-helper
octez-libs.hacl
octez-libs.kzg
octez-libs.lazy-containers
octez-libs.lwt-result-stdlib
octez-libs.mec
octez-libs.micheline
octez-libs.plonk
octez-libs.polynomial
octez-libs.requester
octez-libs.rpc
octez-libs.rpc-http
octez-libs.rpc-http-client
octez-libs.rpc-http-client-unix
octez-libs.rpc-http-server
octez-libs.srs-extraction
octez-libs.stdlib
octez-libs.stdlib-unix
octez-libs.test-helpers
octez-libs.tezos-context
octez-libs.tezos-gossipsub
octez-libs.tezos-p2p-services
octez-libs.tezos-sapling
octez-libs.tezos-workers
octez-libs.tezt-wrapper
octez-libs.tree-encoding
octez-libs.version
plonk_test
tezos_base_p2p_identity_file
tezos_base_unix
tezos_clic_unix
tezos_context_disk
tezos_context_dump
tezos_context_encoding
tezos_context_helpers
tezos_context_memory
tezos_context_merkle_proof_encoding
tezos_context_sigs
tezos_crypto_dal_octez_dal_config
tezos_version_parser
traced_functor_outputs
traced_sigs
traced_structs
traces
module Ring : Ring_sig
type t = Ring.t
type matrix = t array array
val zeros : int -> int -> matrix
zeros r c is a matrix with r rows and c columns filled with zeros
zeros r c
r
c
val identity : int -> matrix
identity n is the identity matrix of dimension n
identity n
n
val equal : matrix -> matrix -> bool
matrix equality
val add : matrix -> matrix -> matrix
matrix addition
val mul : matrix -> matrix -> matrix
matrix multiplication
val transpose : matrix -> matrix
matrix transposition
val row_add : ?coeff:t -> int -> int -> matrix -> unit
row_add ~coeff i j m adds to the i-th row, the j-th row times coeff in m
row_add ~coeff i j m
val row_swap : int -> int -> matrix -> unit
row_swap i j m swaps the i-th and j-th rows of m
row_swap i j m
val row_mul : t -> int -> matrix -> unit
row_mul coeff i m multiplies the i-th row by coeff in m
row_mul coeff i m
val filter_cols : (int -> bool) -> matrix -> matrix
filter_cols f m removes the columns of m whose index does not satisfy f
filter_cols f m
m
f
val split_n : int -> matrix -> matrix * matrix
splits matrix m into the first n columns and the rest, producing two matrices