Class LinearLogic
java.lang.Object
org.episteme.core.mathematics.logic.multivalued.LinearLogic
Linear logic - resource-aware logic.
Linear logic treats propositions as resources that are consumed when used. Key connectives: - ⊗ (tensor): multiplicative conjunction - ⅋ (par): multiplicative disjunction - ⊕ (plus): additive disjunction - invalid input: '&' (with): additive conjunction - ! (bang): unlimited resource - ? (whimper): unlimited consumption
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classRepresents a linear logic proposition with resource tracking. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic LinearLogic.PropositionBang (!)static LinearLogic.PropositionCreates a linear proposition (single use).static LinearLogic.Propositionplus(LinearLogic.Proposition a, LinearLogic.Proposition b, boolean chooseFirst) Plus (⊕) - additive disjunction.static LinearLogic.PropositionTensor product (⊗) - multiplicative conjunction.toString()static LinearLogic.PropositionCreates an unlimited proposition (bang modality).static LinearLogic.PropositionWith (invalid input: '&') - additive conjunction.
-
Constructor Details
-
LinearLogic
public LinearLogic()
-
-
Method Details
-
linear
Creates a linear proposition (single use).- Parameters:
name- the name- Returns:
- the proposition
-
unlimited
Creates an unlimited proposition (bang modality).- Parameters:
name- the name- Returns:
- the proposition
-
tensor
Tensor product (⊗) - multiplicative conjunction. Both resources must be available.- Parameters:
a- first propositionb- second proposition- Returns:
- combined proposition
-
plus
public static LinearLogic.Proposition plus(LinearLogic.Proposition a, LinearLogic.Proposition b, boolean chooseFirst) Plus (⊕) - additive disjunction. Choose one of the resources.- Parameters:
a- first propositionb- second propositionchooseFirst- true to choose first, false for second- Returns:
- chosen proposition
-
with
With (invalid input: '&') - additive conjunction. Both must be available, but only one is used.- Parameters:
a- first propositionb- second proposition- Returns:
- combined proposition
-
bang
Bang (!) modality - makes a resource unlimited.- Parameters:
p- the proposition- Returns:
- unlimited version
-
toString
-