pub struct LinearSequent {
pub context: Vec<String>,
pub conclusion: String,
}Expand description
A one-sided linear sequent ⊢ Γ in linear logic.
Fields§
§context: Vec<String>The context: a list of formula names (positive occurrences).
conclusion: StringThe conclusion formula name.
Implementations§
Source§impl LinearSequent
impl LinearSequent
Sourcepub fn new(context: Vec<String>, conclusion: impl Into<String>) -> Self
pub fn new(context: Vec<String>, conclusion: impl Into<String>) -> Self
Create a new linear sequent.
Sourcepub fn cut_elimination(&self) -> String
pub fn cut_elimination(&self) -> String
Cut elimination: a sequent derivable with cut is derivable without cut.
Returns a string description of the cut-free derivation.
Sourcepub fn is_provable(&self) -> bool
pub fn is_provable(&self) -> bool
Check if the sequent is provable (simplified heuristic).
Sourcepub fn one_sided_form(&self) -> String
pub fn one_sided_form(&self) -> String
Return the one-sided form ⊢ Γ, A.
Trait Implementations§
Source§impl Clone for LinearSequent
impl Clone for LinearSequent
Source§fn clone(&self) -> LinearSequent
fn clone(&self) -> LinearSequent
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for LinearSequent
impl RefUnwindSafe for LinearSequent
impl Send for LinearSequent
impl Sync for LinearSequent
impl Unpin for LinearSequent
impl UnsafeUnpin for LinearSequent
impl UnwindSafe for LinearSequent
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