pub struct ConstructiveProof {
pub statement: String,
pub algorithm: String,
}Expand description
A constructive proof of a statement, given as an explicit algorithm.
Fields§
§statement: StringThe statement being proved.
algorithm: StringThe algorithm (witness / proof term) realising the statement.
Implementations§
Source§impl ConstructiveProof
impl ConstructiveProof
Sourcepub fn new(statement: impl Into<String>, algorithm: impl Into<String>) -> Self
pub fn new(statement: impl Into<String>, algorithm: impl Into<String>) -> Self
Create a new constructive proof.
Sourcepub fn is_effective(&self) -> bool
pub fn is_effective(&self) -> bool
A proof is effective if the algorithm terminates on every input.
Sourcepub fn witnesses_existential(&self) -> bool
pub fn witnesses_existential(&self) -> bool
If the statement is existential, does this proof provide a witness?
Auto Trait Implementations§
impl Freeze for ConstructiveProof
impl RefUnwindSafe for ConstructiveProof
impl Send for ConstructiveProof
impl Sync for ConstructiveProof
impl Unpin for ConstructiveProof
impl UnsafeUnpin for ConstructiveProof
impl UnwindSafe for ConstructiveProof
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