class Searcher extends Logger
Conducts proof search, e.g., as used by the RuleBasedProver. A new instance must be created for each proof obligation.
- Source
 - Searcher.scala
 
- Alphabetic
 - By Inheritance
 
- Searcher
 - Logger
 - AnyRef
 - Any
 
- Hide All
 - Show All
 
- Public
 - All
 
Instance Constructors
- 
      
      
      
        
      
    
      
        
        new
      
      
        Searcher(controller: Controller, goal: Goal, rules: RuleSet, provingUnit: ProvingUnit)
      
      
      
- controller
 the MMT controller to use for lookups, etc.
- goal
 the goal to prove
- rules
 the rules to use
- provingUnit
 the proof task The Searcher works in two modes: first, it greedily applies invertible tactics to each new goal (called the expansion phase) second, forward and backward breadth-first searches are performed in parallel
 
Value Members
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        !=(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ##(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ==(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        apply(levels: Int): Boolean
      
      
      
tries to solve the goal
tries to solve the goal
- levels
 the depth of the breadth-first searches
- returns
 true if the goal was solved
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        asInstanceOf[T0]: T0
      
      
      
- Definition Classes
 - Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        clone(): AnyRef
      
      
      
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... ) @native()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        eq(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        equals(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 -  implicit val facts: Facts
 - 
      
      
      
        
      
    
      
        
        def
      
      
        finalize(): Unit
      
      
      
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( classOf[java.lang.Throwable] )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        getClass(): Class[_]
      
      
      
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native()
 
 -  val goal: Goal
 - 
      
      
      
        
      
    
      
        
        def
      
      
        hashCode(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native()
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        interactive(levels: Int): List[Term]
      
      
      
a list of possible steps to be used in an interactive proof
a list of possible steps to be used in an interactive proof
- levels
 the search depth for forward search
- returns
 a list of possible solutions (possibly with holes)
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        isInstanceOf[T0]: Boolean
      
      
      
- Definition Classes
 - Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        log(e: Error): Unit
      
      
      
logs an error - always logged
logs an error - always logged
- Attributes
 - protected
 - Definition Classes
 - Logger
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        log(s: ⇒ String, subgroup: Option[String] = None): Unit
      
      
      
logs a message with this logger's logprefix
logs a message with this logger's logprefix
- Attributes
 - protected
 - Definition Classes
 - Logger
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        logError(s: ⇒ String): Unit
      
      
      
log as an error message
log as an error message
- Attributes
 - protected
 - Definition Classes
 - Logger
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        logGroup[A](a: ⇒ A): A
      
      
      
wraps around a group to create nested logging
wraps around a group to create nested logging
- Attributes
 - protected
 - Definition Classes
 - Logger
 
 -  def logPrefix: String
 - 
      
      
      
        
      
    
      
        
        def
      
      
        logTemp(s: ⇒ String): Unit
      
      
      
temporary logging - always logged
temporary logging - always logged
- Attributes
 - protected
 - Definition Classes
 - Logger
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        makeMatcher: Matcher
      
      
      
convenience function to create a matcher in the current situation
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ne(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notify(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @native()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notifyAll(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @native()
 
 -  implicit val presentObj: (Obj) ⇒ String
 -  val report: Report
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        synchronized[T0](arg0: ⇒ T0): T0
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        toString(): String
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long, arg1: Int): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... ) @native()