AngouriMath
MatchPattern
Description
Summary
Remarks
"pattern matching as a data structure, not a
testable, with commutative and n-ary matching handled by the engine"
(#248). Three
things tier 2 wants are blocked on rules not being values: a rule cannot carry its own
justification tier, a rule cannot be addressed individually
(#825), and an
e-graph cannot match against an e-class because there is no pattern to match with.
refinement — it is what commutativity requires.
matching the left operand binds
orders of the sum. Only backtracking finds it, so every pattern yields every way it can
match and the caller takes the first that survives to the end.
Commutative``1(AngouriMath.Core.Transformations.Matching.MatchPattern,AngouriMath.Core.Transformations.Matching.MatchPattern). Matching across a flattened chain, so that a rule about two
terms finds them among five, is Gathered``1(System.String,AngouriMath.Core.Transformations.Matching.MatchPattern[]): the n-ary half of #248.
Members
Any
Method and its overloadsBinder(System.String,AngouriMath.Core.Transformations.Matching.MatchPattern)
MethodBoundNames
PropertybuildableByName
FieldBuildableNodeTypes
FieldCanEMatch
PropertyChoiceCount
Propertyconstructors
FieldGathered(System.String,AngouriMath.Core.Transformations.Matching.MatchPattern[])
MethodIsBuildable
PropertyIsDeterministic
PropertyMatch(AngouriMath.Entity,AngouriMath.Core.Transformations.Matching.Bindings)
MethodMatchCore(AngouriMath.Entity,AngouriMath.Core.Transformations.Matching.Bindings)
MethodMaxAssignments
FieldNode(AngouriMath.Core.Transformations.Matching.MatchPattern[])
MethodNodeCount
PropertyNoMatch
FieldRequiredRootType
PropertyRootType
PropertySameShapeAs(AngouriMath.Core.Transformations.Matching.MatchPattern)
MethodSubsumes(AngouriMath.Core.Transformations.Matching.MatchPattern)
MethodTryBuild(AngouriMath.Core.Transformations.Matching.Bindings,AngouriMath.Entity@)
MethodUnbounded
Field
Angouri © 2019-2023 · Project's repo · Site's repo · Octicons · Transparency · 4378 pages online