Packages

trait Rule extends SemanticObject

the type of all Rules

All Rules have an apply method that is passed a Solver for callbacks. The Solver does not implement any back-tracking. Therefore, rules may only use callbacks if their effects are required.

Source
Rule.scala
Linear Supertypes
Known Subclasses
MutableRuleSet, RuleSet, SyntaxDrivenRule, ApplicableUnder, CheckingRule, ComputationRule, CongruenceRule, DelarativeVarianceRule, Disambiguation, EliminationRule, ExtensionalityRule, FormationRule, ForwardSolutionRule, HoleTerm, InferAmbiguous, InferenceAndTypingRule, InferenceRule, InhabitableRule, IntroductionRule, SingleTermBasedCheckingRule, SolutionRule, SubtypingRule, SupertypeRule, TermBasedEqualityRule, TermHeadBasedEqualityRule, TypeBasedEqualityRule, TypeBasedSolutionRule, TypeCoercionRule, TypeSolutionRule, TypingRule, UnaryTermRule, UniverseRule, ValueSolutionRule, VarianceRule, ExecutionRule, HOASNotation, MixfixNotation, NestedHOASNotation, NotationExtension, NotationRealizedType, FixedLengthLiteralLexer, LexParseExtension, LexerExtension, MMTURILexer, PrefixedTokenLexer, QuotationLexer, QuoteLexer, StringInterpolationLexer, UnicodeReplacer, WordReplacer, BackwardInvertible, BackwardSearch, ForwardInvertible, ForwardSearch, InvertibleTactic, Tactic, StructuralFeatureRule, AbbrevRule, ComplificationRule, InverseOperator, MatchingSimplificationRule, RealizedOperator, RealizedType, RealizedValue, RepresentedRealizedType, RewriteRule, SimplificationRule, SimplifierRule, TermTransformationRule, DecLiterals, IMPSTypeEqualityRule, SubtypeJudgRule, IntLiterals, OctLiterals, RatLiterals, ProofTerm, LatexToUnicodeConverter, ApplySolutionRule, ApplyTerm, BackwardPiElimination, Beta, DropTypeAttribution, EqualityTerm, ExpandArrow, Extensionality, FlattenCurrying, ForwardPiElimination, GeneratedDepthRule, GeneratedSolutionRule, GenericApplyTerm, GenericBeta, Injectivity, KindInhabitable, LFHOAS, LambdaCongruence, LambdaTerm, NormalizeCurrying, PiCongruence, PiIntroduction, PiIrrelevanceRule, PiTerm, PiType, PolymorphicApplyTerm, RewriteRule, ShallowPolymorphism, SimpleIrrelevanceRule, Solve, SolveMultiple, SolveType, TheoryTypeWithLF, TypeAttributionTerm, TypeInhabitable, UnivTerm, UniverseKind, UniverseType, LFTypeCoercionRule, EqualityLock, ExternalConditionRule, InferLockTerm, InferLockType, InferUnlock, TypingLock, UnlockLock, ValRule, HOLLightHOAS, ProofIrrelevance, EquivalenceRelationRule, InductiveDefinitionRule, InductiveMatchRule, InductiveProofDefinitionRule, InductiveRule, QuotientRule, RecordDefinitionRule, RecordRule, ReflectionRule, SubtypeRule, ProveSubtypingRule, Combine, Extends, Labcont, Renaming, AnonymousTheoryInfer, ComplexTheoryInfer, CompositionInfer, IdentityInfer, MorphCheck, MorphTypeInhabitable, MorphismApplicationCompute, MorphismApplicationTerm, TheoryTypeInhabitable, TheoryTypeUniverse, ComputeCombine, ComputeDiagramAccess, ComputeEmpty, ComputeExpand, ComputeExtends, ComputeHom, ComputeMixin, ComputePushoutAlongInclusion, ComputeRename, DiagramOperator, FunctorialLinearDiagramOperator, Booleans, Floats, Integers, IntegerLiterals, IntegerSubtype, ImplementsRule, NatLiterals, NatSucc, PosLiterals, Integers, StringLiterals, SubtypeJudgRule, BoundIncludeRule, CurryingEqualityLambdaRule, CurryingEqualityPiRule, CurryingLambdaRule, CurryingPiRule, NatLitSubtype, NatLiterals, PVSHOAS, PVSNotation, RationalLiterals, SetsubRule, StringLiterals, Computation, ElimInfer, Extensionality, FormationInfer, ReflInfer, TypingRule, ContractRep, EllipsisEqualityCheck, EllipsisInfer, EllipsisInjective, EllipsisTypeCheck, ExpandEllipsis, ExpandRep, FlatSeqInfer, FlatseqInjective, FlexaryApply, FlexaryComposition, FlexaryCompositionInfer, FlexaryLambda, FlexaryPi, FoldLeftType, IndexCompute, IndexInfer, LengthAwareApplyTerm, LengthAwareBeta, NTypeTerm, NatLit, One, Succ, Zero, RepEqualityCheck, RepTypeCheck, SequenceEqualityCheck, SequenceTypeCheck, SolveArity, UniverseNType, CodecRule, GeneralListAsArrayCodec, IntroduceEquivalence, IntroduceExistential, IntroduceImplication, TheoryExpRule
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Rule
  2. SemanticObject
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def init: Unit

    errors in Java initializers are hard to debug; therefore, objects should put initialization code here, which will be called by MMT empty by default, may throw errors

    errors in Java initializers are hard to debug; therefore, objects should put initialization code here, which will be called by MMT empty by default, may throw errors

    Definition Classes
    SemanticObject
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. lazy val mpath: MPath

    the MMT URI of this object, derived from its Scala name: scala://package?name

    the MMT URI of this object, derived from its Scala name: scala://package?name

    Definition Classes
    SemanticObject
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. def priority: Int

    when multiple rules are applicable, rules with higher priorities are preferred

    when multiple rules are applicable, rules with higher priorities are preferred

    creating a new rule with higher priority can be used to effectively drop imported rules

  18. def providedRules: List[Rule]

    normally the singleton list of this rule; but rules may bundle additional rules as well

  19. def shadowedRules: List[Rule]

    normally the empty list; but rules may list rules here that should be removed from the context this can be used to override imported rules

  20. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  21. def toString(): String
    Definition Classes
    Rule → AnyRef → Any
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from SemanticObject

Inherited from AnyRef

Inherited from Any

Ungrouped