Packages

  • package root

    KeYmaera X is a theorem prover for differential dynamic logic (dL), a logic for specifying and verifying properties of hybrid systems with mixed discrete and continuous dynamics.

    KeYmaera X: An aXiomatic Tactical Theorem Prover

    KeYmaera X is a theorem prover for differential dynamic logic (dL), a logic for specifying and verifying properties of hybrid systems with mixed discrete and continuous dynamics. Reasoning about complicated hybrid systems requires support for sophisticated proof techniques, efficient computation, and a user interface that crystallizes salient properties of the system. KeYmaera X allows users to specify custom proof search techniques as tactics, execute tactics in parallel, and interface with partial proofs via an extensible user interface.

    http://keymaeraX.org/

    Concrete syntax for input language Differential Dynamic Logic

    Package Structure

    Main documentation entry points for KeYmaera X API:

    Entry Points

    Additional entry points and usage points for KeYmaera X API:

    References

    Full references on KeYmaera X are provided at http://keymaeraX.org/. The main references are the following:

    1. André Platzer. A complete uniform substitution calculus for differential dynamic logic. Journal of Automated Reasoning, 59(2), pp. 219-265, 2017.

    2. Nathan Fulton, Stefan Mitsch, Jan-David Quesel, Marcus Völp and André Platzer. KeYmaera X: An axiomatic tactical theorem prover for hybrid systems. In Amy P. Felty and Aart Middeldorp, editors, International Conference on Automated Deduction, CADE'15, Berlin, Germany, Proceedings, volume 9195 of LNCS, pp. 527-538. Springer, 2015.

    3. André Platzer. Logical Foundations of Cyber-Physical Systems. Springer, 2018. Videos

    Definition Classes
    root
  • package edu
    Definition Classes
    root
  • package cmu
    Definition Classes
    edu
  • package cs
    Definition Classes
    cmu
  • package ls
    Definition Classes
    cs
  • package keymaerax
    Definition Classes
    ls
  • package infrastruct

    The infrastruct package provides central prover infrastructure such as unification and augmented formula analysis.

    The infrastruct package provides central prover infrastructure such as unification and augmented formula analysis. This infrastructure is of basic interest and useful independently of any particular tactic language etc.

    Main functionality:

    • Position with PosInExpr positioning within subformulas.
    • Context Convenience representation of formulas used as contexts that provide ways of substituting expressions in by conceptually splitting and managing the context around a position in a formula.
    • RenUSubst Renaming Uniform Substitutions that quickly combine and ultimately reduce to uniform renaming and uniform substitution of the kernel.
    • UnificationMatch single-sided matching unification algorithms.
    • Augmentors: Implicit convenience additions of helper functions to formulas, terms, programs, sequents that are useful for analysis and transformation.
    • ExpressionTraversal generic functionality for traversing expressions for analysis or transformation.
    Definition Classes
    keymaerax
    See also

    edu.cmu.cs.ls.keymaerax.btactics.UnifyUSCalculus

  • object TreeForm

    Represent terms as recursive lists of logical symbols.

    Represent terms as recursive lists of logical symbols. This simplified structure is useful for certain analyses that treat all the operators in a relatively uniform way. This representation flattens the term's structure as much as possible (e.g. turning a+(b+c) into (a+b+c)), to make analyses that consider the depth of a term more meaningful. Created by bbohrer on 10/23/15.

    Definition Classes
    infrastruct
  • class RecursivePathOrdering extends Ordering[Term]

    Recursive path orderings are one general way to extend orderings on logical symbols to orderings on terms.

    Recursive path orderings are one general way to extend orderings on logical symbols to orderings on terms. They obey some of the intuition one might want from a term ordering. For example, if the most complex symbol in t1 is more complex than the most complex symbol of t2, then t1 > t2.

    Definition Classes
    TreeForm
    See also

    Nachum Dershowitz. Orderings for Term-Rewriting Systems. Theoretical Computer Science, 1982.

  • Ops
  • TreeOrdering

object TreeOrdering extends Ordering[Tree]

Linear Supertypes
Ordering[Tree], PartialOrdering[Tree], Equiv[Tree], Serializable, Serializable, Comparator[Tree], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TreeOrdering
  2. Ordering
  3. PartialOrdering
  4. Equiv
  5. Serializable
  6. Serializable
  7. Comparator
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. class Ops extends AnyRef
    Definition Classes
    Ordering

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[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  6. def compare(x: Tree, y: Tree): Int
    Definition Classes
    TreeOrdering → Ordering → Comparator
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def equiv(x: Tree, y: Tree): Boolean
    Definition Classes
    Ordering → PartialOrdering → Equiv
  10. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def gt(x: Tree, y: Tree): Boolean
    Definition Classes
    Ordering → PartialOrdering
  13. def gteq(x: Tree, y: Tree): Boolean
    Definition Classes
    Ordering → PartialOrdering
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. def lt(x: Tree, y: Tree): Boolean
    Definition Classes
    Ordering → PartialOrdering
  17. def lteq(x: Tree, y: Tree): Boolean
    Definition Classes
    Ordering → PartialOrdering
  18. def max(x: Tree, y: Tree): Tree
    Definition Classes
    Ordering
  19. def min(x: Tree, y: Tree): Tree
    Definition Classes
    Ordering
  20. implicit def mkOrderingOps(lhs: Tree): Ops
    Definition Classes
    Ordering
  21. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. def on[U](f: (U) ⇒ Tree): Ordering[U]
    Definition Classes
    Ordering
  25. def reverse: Ordering[Tree]
    Definition Classes
    Ordering → PartialOrdering
  26. def reversed(): Comparator[Tree]
    Definition Classes
    Comparator
  27. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  28. def thenComparing[U <: Comparable[_ >: U]](arg0: Function[_ >: Tree, _ <: U]): Comparator[Tree]
    Definition Classes
    Comparator
  29. def thenComparing[U](arg0: Function[_ >: Tree, _ <: U], arg1: Comparator[_ >: U]): Comparator[Tree]
    Definition Classes
    Comparator
  30. def thenComparing(arg0: Comparator[_ >: Tree]): Comparator[Tree]
    Definition Classes
    Comparator
  31. def thenComparingDouble(arg0: ToDoubleFunction[_ >: Tree]): Comparator[Tree]
    Definition Classes
    Comparator
  32. def thenComparingInt(arg0: ToIntFunction[_ >: Tree]): Comparator[Tree]
    Definition Classes
    Comparator
  33. def thenComparingLong(arg0: ToLongFunction[_ >: Tree]): Comparator[Tree]
    Definition Classes
    Comparator
  34. def toString(): String
    Definition Classes
    AnyRef → Any
  35. def tryCompare(x: Tree, y: Tree): Some[Int]
    Definition Classes
    Ordering → PartialOrdering
  36. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from Ordering[Tree]

Inherited from PartialOrdering[Tree]

Inherited from Equiv[Tree]

Inherited from Serializable

Inherited from Serializable

Inherited from Comparator[Tree]

Inherited from AnyRef

Inherited from Any

Ungrouped