如何生成Isabelle理论的html版本

如何生成Isabelle理论的html版本,isabelle,theorem-proving,Isabelle,Theorem Proving,我有一个伊莎贝尔理论文件,名为John.thy。我想把它给我的朋友看,但是我的朋友没有伊莎贝尔,而且原始的。你的文件不太容易阅读。我在Isabelle库中看到过一些网页(比如这一个:),它们有非常好的语法高亮显示,我希望我的理论是这样的 那么,我如何制作John.html?我已经看过了文档,它看起来非常可怕和困难,所有的构建文件和制作文件等等。能否请一些善良的灵魂解释一下最简单的方法?首先回答您的问题(另请参见第3.2节-系统构建选项): 要为您的John.thy生成HTML,请在与John.t

我有一个伊莎贝尔理论文件,名为
John.thy
。我想把它给我的朋友看,但是我的朋友没有伊莎贝尔,而且原始的
。你的
文件不太容易阅读。我在Isabelle库中看到过一些网页(比如这一个:),它们有非常好的语法高亮显示,我希望我的理论是这样的


那么,我如何制作
John.html
?我已经看过了文档,它看起来非常可怕和困难,所有的构建文件和制作文件等等。能否请一些善良的灵魂解释一下最简单的方法?

首先回答您的问题(另请参见第3.2节-系统构建选项):

要为您的
John.thy
生成HTML,请在与
John.thy
相同的目录中创建一个名为
ROOT
的文件,其内容如下

session John = "HOL" +
  theories
    John
然后,保持在同一个目录中,调用

isabelle build -d . -o browser_info -v John
在哪里

  • -d.
    指定应在当前目录中搜索会话(在
    根文件中指定)
  • -o browser\u info
    是生成HTML(也称为浏览器信息)的基本标志,并且
  • -v
    (详细标志)有助于查看结果放在哪个目录中
上面的调用将输出类似于

Started at Thu Jul 25 09:38:20 JST 2013 [...]
[...]
Session Pure
Session HOL (main)
Session John
Running John ...
John: theory John
[...]
Browser info at /home/username/.isabelle/Isabelle2013/browser_info/HOL/John
[...]
(其中,
[…]
表示省略的输出)。因此,在这里您可以看到要获取HTML文件必须参考哪个目录

话虽如此,至少出于以下原因,我个人更喜欢PDF而不是HTML:

  • 使用
    -o browser\u info
    可以在一个目录中获得一组文件(而不是在使用
    -o document=pdf
    时仅获得一个独立的文件)
  • 并非所有的Isabelle符号都能很好地用HTML呈现(而在生成PDF时,您可以完全控制符号)

注意:如果您使用Mac OS的Isabelle应用程序,您可能需要将上面的
Isabelle
替换为
/Applications/Isabelle2013.app/Isabelle/bin/Isabelle
或将
/Applications/Isabelle2013.app/Isabelle/bin/
添加到您的
路径中
首先回答您的问题(另请参见第3.2节-系统构建选项):

要为您的
John.thy
生成HTML,请在与
John.thy
相同的目录中创建一个名为
ROOT
的文件,其内容如下

session John = "HOL" +
  theories
    John
然后,保持在同一个目录中,调用

isabelle build -d . -o browser_info -v John
在哪里

  • -d.
    指定应在当前目录中搜索会话(在
    根文件中指定)
  • -o browser\u info
    是生成HTML(也称为浏览器信息)的基本标志,并且
  • -v
    (详细标志)有助于查看结果放在哪个目录中
上面的调用将输出类似于

Started at Thu Jul 25 09:38:20 JST 2013 [...]
[...]
Session Pure
Session HOL (main)
Session John
Running John ...
John: theory John
[...]
Browser info at /home/username/.isabelle/Isabelle2013/browser_info/HOL/John
[...]
(其中,
[…]
表示省略的输出)。因此,在这里,您可以看到要获取HTML文件必须参考哪个目录

话虽如此,至少出于以下原因,我个人更喜欢PDF而不是HTML:

  • 使用
    -o browser\u info
    可以在一个目录中获得一组文件(而不是在使用
    -o document=pdf
    时仅获得一个独立的文件)
  • 并非所有的Isabelle符号都能很好地用HTML呈现(而在生成PDF时,您可以完全控制符号)

注意:如果您正在使用Mac OS的Isabelle应用程序,您可能需要将上面的
Isabelle
替换为
/Applications/Isabelle2013.app/Isabelle/bin/Isabelle
或将
/Applications/Isabelle2013.app/Isabelle/bin/
添加到您的
路径
,谢谢Chris,回答得很好。我已经自由地f澄清在流程的每个步骤中,一个人需要在哪个目录中,因为这是以前让我感到困惑的事情。我发现我需要在我的机器上找到Isabelle的完整路径,所以我还添加了一条关于这一点的注释。你提到理论名称以大写字母开头是惯例。会话名称也是如此。很好nswer,谢谢Chris。我已经冒昧地澄清了在流程的每一步中,一个人需要在哪个目录中,因为这是以前让我感到困惑的事情。我发现我需要在我的机器上找到Isabelle的完整路径,所以我还添加了一条关于这一点的注释。你提到理论名称以大写字母开头是惯例呃。会话名称也是如此。也许你也可以在你的帖子中将大写字母改为
John.thy
John.html
(以便让未来的读者明白这个惯例)。然后我可以从我的答案中删除我对它的评论。也许你也可以在你的帖子中将大写字母改为
John.thy
John.html
(以便让未来的读者清楚地看到这个惯例)。然后我可以从我的答案中删除我对它的评论。