pub struct RelaxedInstance<V: IntoIterator> {
pub x: V,
pub u: V::Item,
}Expand description
RelaxedInstance defines a relaxed version of R1CS instance.
It is the basis of instances in many folding schemes that support R1CS.
Fields§
§x: VRelaxedInstance::x is the public input vector
u: V::ItemRelaxedInstance::u is the constant term
Trait Implementations§
Source§impl<F: Field> ArithRelation<RelaxedWitness<&[F]>, RelaxedInstance<&[F]>> for R1CS<F>
impl<F: Field> ArithRelation<RelaxedWitness<&[F]>, RelaxedInstance<&[F]>> for R1CS<F>
Source§type Evaluation = Vec<F>
type Evaluation = Vec<F>
ArithRelation::Evaluation defines the type of the evaluation result
returned by ArithRelation::eval_relation, and consumed by
ArithRelation::check_evaluation. Read moreSource§fn eval_relation(
&self,
w: &RelaxedWitness<&[F]>,
u: &RelaxedInstance<&[F]>,
) -> Result<Self::Evaluation, Error>
fn eval_relation( &self, w: &RelaxedWitness<&[F]>, u: &RelaxedInstance<&[F]>, ) -> Result<Self::Evaluation, Error>
ArithRelation::eval_relation evaluates the constraint system at
witness w and instance u. It returns the evaluation result. Read moreSource§fn check_evaluation(
w: &RelaxedWitness<&[F]>,
_u: &RelaxedInstance<&[F]>,
v: Self::Evaluation,
) -> Result<(), Error>
fn check_evaluation( w: &RelaxedWitness<&[F]>, _u: &RelaxedInstance<&[F]>, v: Self::Evaluation, ) -> Result<(), Error>
ArithRelation::check_evaluation checks if the evaluation result is
valid. The witness w and instance u are also parameters, because the
validity check may need information contained in w and/or u. Read moreAuto Trait Implementations§
impl<V> Freeze for RelaxedInstance<V>
impl<V> RefUnwindSafe for RelaxedInstance<V>
impl<V> Send for RelaxedInstance<V>
impl<V> Sync for RelaxedInstance<V>
impl<V> Unpin for RelaxedInstance<V>
impl<V> UnsafeUnpin for RelaxedInstance<V>
impl<V> UnwindSafe for RelaxedInstance<V>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more