【发布时间】:2014-01-21 20:46:06
【问题描述】:
我想找到定理。我已经阅读了Isabelle/Isar reference manual 中关于find_theorems 的部分:
find_theorems 标准
从与所有给定搜索匹配的理论或证明上下文中检索事实 标准。标准
name: p选择所有符合条件的定理 name 匹配模式 p,其中可能包含“*”通配符。标准intro,elim和dest选择与当前目标匹配的定理作为介绍, 分别消除或销毁规则。标准solves返回 所有可以直接解决当前目标的规则。标准simp: t选择左侧与给定术语匹配的所有重写规则。这 标准术语 t 选择所有包含模式 t 的定理——像往常一样, 模式可能包含出现的虚拟“_”、示意图变量和 类型约束。标准前面可以加上“
-”来选择不匹配的定理。笔记 给出空的标准列表会产生所有当前已知的事实。一个 可以对打印事实的数量进行可选限制;默认值为 40。 默认情况下,从搜索结果中删除重复项。使用with_dups来 显示重复项。
据我了解,find_theorems 用于 Isabelle/jEdit 的查找窗口。以上内容并不能帮助我找到以下情况的相关定理(Lambda 是 Nominal Isabelle 扩展的理论。压缩包是 here):
theory First
imports Lambda
begin
theorem "Lam [x].(Lam [y].(App (Var x)(Var y))) = Lam [y].(Lam [x].(App (Var y)(Var x)))"
当我尝试搜索表达式 LamIsabelle/jedit 时说
Inner syntax error: unexpected end of input
Failed to parse term
如何让它查找包含常量Lam 的所有定理?
【问题讨论】:
标签: isabelle