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 LexicographicSymbolOrdering extends Ordering[Term]

    Given a list of symbols, and two terms x and y, a LexicographicSymbolOrdering counts the number of occurrences of each symbol in x and y, and considers x > y if x has more occurrences of the first symbol for which they differ.

    Given a list of symbols, and two terms x and y, a LexicographicSymbolOrdering counts the number of occurrences of each symbol in x and y, and considers x > y if x has more occurrences of the first symbol for which they differ.

    Definition Classes
    TreeForm
  • Ops
  • Ordering

object Ordering extends Ordering[Stats]

Linear Supertypes
Ordering[Stats], PartialOrdering[Stats], Equiv[Stats], Serializable, Serializable, Comparator[Stats], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Ordering
  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: Stats, y: Stats): Int
    Definition Classes
    Ordering → 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: Stats, y: Stats): 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 getCount(stat: Stats, sym: TermSymbol): Int
  13. def gt(x: Stats, y: Stats): Boolean
    Definition Classes
    Ordering → PartialOrdering
  14. def gteq(x: Stats, y: Stats): Boolean
    Definition Classes
    Ordering → PartialOrdering
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. def lt(x: Stats, y: Stats): Boolean
    Definition Classes
    Ordering → PartialOrdering
  18. def lteq(x: Stats, y: Stats): Boolean
    Definition Classes
    Ordering → PartialOrdering
  19. def max(x: Stats, y: Stats): Stats
    Definition Classes
    Ordering
  20. def min(x: Stats, y: Stats): Stats
    Definition Classes
    Ordering
  21. implicit def mkOrderingOps(lhs: Stats): Ops
    Definition Classes
    Ordering
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  25. def on[U](f: (U) ⇒ Stats): Ordering[U]
    Definition Classes
    Ordering
  26. def reverse: Ordering[Stats]
    Definition Classes
    Ordering → PartialOrdering
  27. def reversed(): Comparator[Stats]
    Definition Classes
    Comparator
  28. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  29. def thenComparing[U <: Comparable[_ >: U]](arg0: Function[_ >: Stats, _ <: U]): Comparator[Stats]
    Definition Classes
    Comparator
  30. def thenComparing[U](arg0: Function[_ >: Stats, _ <: U], arg1: Comparator[_ >: U]): Comparator[Stats]
    Definition Classes
    Comparator
  31. def thenComparing(arg0: Comparator[_ >: Stats]): Comparator[Stats]
    Definition Classes
    Comparator
  32. def thenComparingDouble(arg0: ToDoubleFunction[_ >: Stats]): Comparator[Stats]
    Definition Classes
    Comparator
  33. def thenComparingInt(arg0: ToIntFunction[_ >: Stats]): Comparator[Stats]
    Definition Classes
    Comparator
  34. def thenComparingLong(arg0: ToLongFunction[_ >: Stats]): Comparator[Stats]
    Definition Classes
    Comparator
  35. def toString(): String
    Definition Classes
    AnyRef → Any
  36. def tryCompare(x: Stats, y: Stats): Some[Int]
    Definition Classes
    Ordering → PartialOrdering
  37. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from Ordering[Stats]

Inherited from PartialOrdering[Stats]

Inherited from Equiv[Stats]

Inherited from Serializable

Inherited from Serializable

Inherited from Comparator[Stats]

Inherited from AnyRef

Inherited from Any

Ungrouped