|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.xmloperator.lambda.tree.reduction.TreeBetaUtils
Utilities about beta reduction.
Constructor Summary | |
TreeBetaUtils()
|
Method Summary | |
static Application |
leftermostOutermostRedex(Term rootTerm)
Returns the leftermost-outermost redex of a Term or null if the Term has no redex. |
static void |
main(java.lang.String[] args)
|
static Term |
reduce(Application redex)
Reduces a redex. |
static Term |
reduceDeeply(Term rootTerm,
org.xmloperator.lambda.tree.reduction.ReductionListener reductionListener)
Reduces a Term until a normal form is obtained. |
static boolean |
test(java.io.PrintStream out,
boolean isVerbose)
Reduce some redexes and display the results. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public TreeBetaUtils()
Method Detail |
public static final Application leftermostOutermostRedex(Term rootTerm)
Pre-condition: the given Term is normalized about end-of-scopes.
Normalisation about EndOfScopes, i.e. scope extrusion, can be verified
by using AlphaUtils.verifyScopeExtrusion(Term)
.
rootTerm
- a Term.
java.lang.NullPointerException
- if the given Term is broken.public static final Term reduce(Application redex)
Pre-condition: the redex is normalized about EndOfScopes.
Post-condition: the redex is normalized about EndOfScopes.
Normalisation about EndOfScopes, i.e scope extrusion, can be verified
by using AlphaUtils.verifyScopeExtrusion(Term)
.
redex
- a redex to reduce.
java.lang.IllegalArgumentException
- if the given redex is not a redex.
java.lang.NullPointerException
- if the given redex is broken.public static final Term reduceDeeply(Term rootTerm, org.xmloperator.lambda.tree.reduction.ReductionListener reductionListener)
ReductionListener.notifyStartReduction(org.xmloperator.lambda.tree.model.Application)
.
rootTerm
- a Term to reduce.reductionListener
- a listener about beta-reduction process.
May be null.
java.lang.NullPointerException
- if the given root term is broken.
org.xmloperator.lambda.tree.exception.NotInNormalFormException
- if the ReductionListener do so.
The obtained Term is provided by the exception.public static void main(java.lang.String[] args)
public static boolean test(java.io.PrintStream out, boolean isVerbose)
out
- the PrintStream to print results. May be null.isVerbose
- if true then all tests have to be displayed.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |