Solves the goal using sorry
if ci
does not contain unknown constants,
and throws and error if ci
contains unknown constants
When we evaluate tactics on a theorem T
, we replay the file that defines T
and calls the tactic on the environment env
just before the declaration of T
.
Since there are commands that define multiple constants simultaneously, it is
possible that the proof or type of T
contains constants not present in env
.
We run testUnknownConstant
to detect such situations.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Tactic sequence: intros; aesop
Only guaranteed to work for aesop @ Lean v4.14.0
Equations
- One or more equations did not get rendered due to their size.
Instances For
Tactic sequence: intros; aesop (add unsafe premise₁) ⋯ (add unsafe premiseₙ)
Only guaranteed to work for aesop @ Lean v4.14.0
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
- testUnknownConstant : RegisteredTactic
- useRfl : RegisteredTactic
- useSimp : RegisteredTactic
- useSimpAll : RegisteredTactic
- useSimpAllWithPremises : RegisteredTactic
- useAesop (subHeartbeats : Nat) : RegisteredTactic
- useAesopWithPremises (subHeartbeats : Nat) : RegisteredTactic
- useDuper : RegisteredTactic
- useAuto (ignoreNonQuasiHigherOrder : Bool) (config : SolverConfig) (timeout : Nat) : RegisteredTactic
Instances For
Equations
Equations
Equations
- One or more equations did not get rendered due to their size.
Equations
- EvalAuto.RegisteredTactic.testUnknownConstant.toCiTactic = EvalAuto.testUnknownConstant
- EvalAuto.RegisteredTactic.useRfl.toCiTactic = fun (x : Lean.ConstantInfo) => EvalAuto.useRfl
- EvalAuto.RegisteredTactic.useSimp.toCiTactic = fun (x : Lean.ConstantInfo) => EvalAuto.useSimp
- EvalAuto.RegisteredTactic.useSimpAll.toCiTactic = fun (x : Lean.ConstantInfo) => EvalAuto.useSimpAll
- EvalAuto.RegisteredTactic.useSimpAllWithPremises.toCiTactic = EvalAuto.useSimpAllWithPremises
- (EvalAuto.RegisteredTactic.useAesop a).toCiTactic = fun (x : Lean.ConstantInfo) => EvalAuto.useAesop a
- (EvalAuto.RegisteredTactic.useAesopWithPremises a).toCiTactic = EvalAuto.useAesopWithPremises a
- EvalAuto.RegisteredTactic.useDuper.toCiTactic = EvalAuto.useDuper
- (EvalAuto.RegisteredTactic.useAuto a a_1 a_2).toCiTactic = EvalAuto.useAuto a a_1 a_2
Instances For
Use runWithEffectOfCommands
to run tactics at the place just before
the command that created the constant name
Note: Use initSrcSearchPath
to get SearchPath of source files
Equations
- One or more equations did not get rendered due to their size.
Instances For
- maxHeartbeats : Nat
Timeout for each tactic
- tactics : Array RegisteredTactic
Tactics to run at each constant declaration
Optional file for saving the log of the evaluation
Optional file for saving the result of the evaluation
- nonterminates : Array (RegisteredTactic × Lean.Name)
On some problems, certain tactics may go into infinite loops not guarded by
Core.checkMaxHeartbeats
. These instances should be recorded here and avoided (throw error immediately) during evaluation.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Effectively runTacticsAtConstantDeclaration
at each constant in modName
which satisfies filter
Note: Use initSrcSearchPath
to get SearchPath of source files
For the i
-th theorem name
in names
, its entry in the result file has the following form:
<i> #[<result> <time> <heartbeats>, ⋯, <result> <time> <heartbeats>] <name>
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
- maxHeartbeats : Nat
Timeout for each tactic
- tactics : Array RegisteredTactic
Tactics to run at each constant declaration
- resultFolder : String
Folder for saving the result of the evaluation
- nprocs : Nat
Number of processes to use
Memory limit for each evaluation process, in kb
Total time limit for each evaluation process, in seconds
Specify modules to run tactics on
- nonterminates : Array (RegisteredTactic × Lean.Name)
On some problems, certain tactics may go into infinite loops not guarded by
Core.checkMaxHeartbeats
. These instances should be recorded here and avoided (throw error immediately) during evaluation.
Instances For
This should be run after import Mathlib
and import Auto.EvaluateAuto.TestTactics
,
and should be run with a cwd
where lake env
creates an environment in which
Mathlib
and lean-auto
are available
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Read results generated by evalTacticsAtMathlibHumanTheorems
Equations
- One or more equations did not get rendered due to their size.
Instances For
Similar to readETMHTResult
, but will not throw error if a .result
file is empty.
Instead, its return value contains all the paths to the .result
files that are empty.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Read results generated by evalTacticsAtMathlibHumanTheorems
and
store them in a single file gatheredResult
in config.resultFolder
Equations
- One or more equations did not get rendered due to their size.
Instances For
Similar to gatherETMHTResult
, but will not throw error if a .result
file is empty.
Instead, its saves ⟨all the paths to the .result
files that are empty⟩ in nonRetPaths
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Read evaluateFiles.txt
generated by evalTacticsAtMathlibHumanTheorems
Equations
- One or more equations did not get rendered due to their size.