Source-pinned research

Research proof index

Search theorem names, mathematical ideas, modules, topics, projects, and role-labelled researchers. Open a result for its complete indexed Lean declaration and source record.

This index contains 573 research declarations. Search 10,000 more complete Mathlib declarations.

1 topic

573 results

Clear filters
Project-declaredLean 4.31.0

Folding polynomial deg y bound

Polynomial.FoldingPolynomial.folding_polynomial_deg_y_bound

Plain-language statement

The degree of foldingPolynomial is less than q.degree in the second variable, when q is not a constant polynomial.

cryptographyproof systemscoding theory

Source project: ArkLib

Person-level attribution pending.

View proof record
Project-declaredLean 4.31.0

Folding polynomial is unique

Polynomial.FoldingPolynomial.folding_polynomial_is_unique

Plain-language statement

The uniqueness of the folding polynomial.

cryptographyproof systemscoding theory

Source project: ArkLib

Person-level attribution pending.

View proof record
Project-declaredLean 4.31.0

Folding polynomial is unique

Polynomial.FoldingPolynomial.folding_polynomial_is_unique'

Project documentation

Alternative uniqueness theorem for the folding polynomial. The only difference is the h_x condition which in this theorem is only and inequality. Handy in practice since degreeX is defined as a supremum so inequality is much easier to prove for it.

cryptographyproof systemscoding theory

Source project: ArkLib

Person-level attribution pending.

View proof record
Project-declaredLean 4.31.0

Poly Fold base

Polynomial.FoldingPolynomial.polyFold_base

Plain-language statement

Base case of polyFold: when k = 0 or f has degree below k, polyFold f k r = C (f.eval r).

cryptographyproof systemscoding theory

Source project: ArkLib

Person-level attribution pending.

View proof record
Project-declaredLean 4.31.0

Poly Fold nat Degree le

Polynomial.FoldingPolynomial.polyFold_natDegree_le

Plain-language statement

The degree bound of polyFold in terms of the degree of the original polynomial and k.

cryptographyproof systemscoding theory

Source project: ArkLib

Person-level attribution pending.

View proof record
Project-declaredLean 4.31.0

Poly Fold step

Polynomial.FoldingPolynomial.polyFold_step

Plain-language statement

Recursive case of polyFold: when 0 < k ≤ f.natDegree, polyFold f k r = C ((f %ₘ X^k).eval r) + X * polyFold (f /ₘ X^k) k r.

cryptographyproof systemscoding theory

Source project: ArkLib

Person-level attribution pending.

View proof record