Packages

case class ChooseSome[A](options: () ⇒ Iterator[A], e: (A) ⇒ BelleExpr) extends BelleExpr with Product with Serializable

ChooseSome(options, e)(pr) proves e(o)(pr) after choosing some option o from options whose proof with tactic e succeeds after supplying argument o to e. It's usually one of the first options o for which e(o)(pr) does not fail. Fails if no choice from options made e(o)(pr) succeed.

options

The (lazy) iterator or stream from which subsequent options o will be tried.

e

The tactic generator e that will be tried with input o on the Provable subsequently for each of the options o in options until one is found for which e(o) does not fail.

See also

EitherTactic

Linear Supertypes
Serializable, Serializable, Product, Equals, BelleExpr, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ChooseSome
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. BelleExpr
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ChooseSome(options: () ⇒ Iterator[A], e: (A) ⇒ BelleExpr)

    options

    The (lazy) iterator or stream from which subsequent options o will be tried.

    e

    The tactic generator e that will be tried with input o on the Provable subsequently for each of the options o in options until one is found for which e(o) does not fail.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def &(other: BelleExpr): BelleExpr

    this & other: sequential composition this ; other executes other on the output of this, failing if either fail.

    this & other: sequential composition this ; other executes other on the output of this, failing if either fail.

    Definition Classes
    BelleExpr
  4. def *(n: Int): BelleExpr

    this*n: bounded repetition executes this tactic to times number of times, failing if any of those repetitions fail.

    this*n: bounded repetition executes this tactic to times number of times, failing if any of those repetitions fail.

    Definition Classes
    BelleExpr
  5. def <(children: BelleExpr*): BelleExpr

    <(e1,...,en): branching to run tactic ei on branch i, failing if any of them fail or if there are not exactly n branches.

    <(e1,...,en): branching to run tactic ei on branch i, failing if any of them fail or if there are not exactly n branches.

    Definition Classes
    BelleExpr
    Note

    Equivalent to

    a & Idioms.<(b,c)
  6. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  7. def U(p: (SequentType, (RenUSubst) ⇒ BelleExpr)*): BelleExpr

    case _ of {fi => ei} uniform substitution case pattern applies the first ei such that fi uniformly substitutes to current provable for which ei does not fail, fails if the ei of all matching fi fail.

    case _ of {fi => ei} uniform substitution case pattern applies the first ei such that fi uniformly substitutes to current provable for which ei does not fail, fails if the ei of all matching fi fail.

    Definition Classes
    BelleExpr
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  10. val e: (A) ⇒ BelleExpr
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def getLocation: Location

    Get the location where this tactic stems from.

    Get the location where this tactic stems from.

    Definition Classes
    BelleExpr
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. val options: () ⇒ Iterator[A]
  20. def prettyString: String

    pretty-printed form of this Bellerophon tactic expression

    pretty-printed form of this Bellerophon tactic expression

    Definition Classes
    ChooseSomeBelleExpr
  21. def setLocation(newLocation: Location): Unit

    Definition Classes
    BelleExpr
    Note

    location is private so that it's not something that effects case class quality, and mutable so that it can be ignored when building up custom tactics.

  22. def switch(children: (BelleLabel, BelleExpr)*): BelleExpr
    Definition Classes
    BelleExpr
  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    BelleExpr → AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  28. def |(other: BelleExpr): BelleExpr

    this | other: alternative composition executes other if applying this fails, failing if both fail.

    this | other: alternative composition executes other if applying this fails, failing if both fail.

    Definition Classes
    BelleExpr
  29. def |!(other: BelleExpr): BelleExpr

    this |! other: alternative composition executes other if applying this fails (even critically), failing if both fail.

    this |! other: alternative composition executes other if applying this fails (even critically), failing if both fail.

    Definition Classes
    BelleExpr
  30. def ||(other: BelleExpr): BelleExpr
    Definition Classes
    BelleExpr

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from BelleExpr

Inherited from AnyRef

Inherited from Any

Ungrouped