我想在一個名爲List
的理論中定義我自己的列表類型,但已經有一個名稱爲理論。 有沒有比Main
更輕量級的理論?Isabelle中可以不導入任何理論嗎?
回答
不能在Isabelle中導入任何內容(即使對於基本邏輯,導入也是必需的)。在Isabelle中實施HOL有三個支持的入口點:Main
,Complex_Main
(它是Main
加上一些分析)和Plain
,但只有前兩個用於常規用法。
Plain已包含基本邏輯,但在標準庫(如無列表)方面幾乎沒有任何內容。但是重要的工具,如QuickCheck,Sledgehammer和代碼生成器也不見了。此外,如果您從Plain開始,能夠列出您自己的理論列表,請注意您的理論與Main上的任何工作建築(幾乎所有內容)都不兼容。
所以,除非你真的有很好的理由這樣做,否則我會建議遵循Raphael的評論,給你的列表理論另一個名字。
你可能只進口HOL
,如
theory Test_Theory
imports HOL
begin
…
end
我經常這樣做的測試和調查有關伊莎貝爾。
但是,您將缺少數據類型定義,並且可能需要導入Datatype
(甚至可能是Record
),以便能夠編寫您的List
理論。
theory Test_Theory
imports HOL Datatype Record
begin
…
end
由於兩個Datatype
和Record
進口HOL
,你可能只是:
theory Test_Theory
imports Datatype Record
begin
…
end
這並不容易沒有理論Main
做,但並非不可能。請注意,你將不得不做許多廣泛使用的定理,並且可能必須寫出並證明你的擁有者。
我不知道'FunDef',謝謝你的提示,會看看它。我的確對此感興趣的是「不那麼臃腫」的基礎理論,至少因爲它消耗了大量的內存(我正在運行一個1G內存的機器,這對於Isabelle來說很小......我打算獲得更多內存,特別是伊莎貝爾)。此外,另一個尋找另一個理論集合的理由比'Main'提供的理論更有一些理論不適合某種證明。作爲一個例子,我覺得集合論使用的公理化並不方便,並且希望建立我自己的(如果可能的話)。 – Hibou57
請注意,在Main'HOL下面導入任何內容都是未指定的,並且會出現奇怪的效果。 1 GB RAM是進入Isabelle/HOL引導內部的一個不好的理由。 – Makarius
與「Pure」不一樣嗎? (我會看,謝謝你的觀點)。 – Hibou57
請注意,$ISABELLE_HOME/src/HOL/ex/Seq.thy
給出了一個爲實驗定義自己的列表數據類型的簡單示例,而沒有着手於如何在低於Main
入口點的系統上使用這個微妙的問題。 (初學者感到困惑,專家不這樣做)。
從理論上講,你可以導入的最原始的理論是Pure
,但這只是一個基本的邏輯框架,沒有像HOL這樣的任何對象邏輯。只是爲了好奇,你可以看看$ISABELLE_HOME/src/HOL/ex/Higher_Order_Logic.thy
,它從Pure
開始,並定義了H.O.L的最小版本。除此之外,沒有你期望從Isabelle/HOL那裏獲得的任何先進的理論和工具。
對'Higher_Order_Logic'的引用非常好。 –
- 1. Isabelle/HOL中的Int理論問題
- 2. 在Isabelle/jEdit中處理理論而不保存它
- 3. 無論任務失敗,都可以運行處理程序嗎?
- 4. 可以同時運行JUnit理論嗎?
- 5. 任何人都可以處理它嗎?
- 6. 如何在Isabelle/jEdit中輸入集合論的符號?
- 7. 任何人都可以解釋python的相對導入嗎?
- 8. 我可以刪除任何隱式導入的Java庫嗎?
- 9. JPG可以導入MapPoint嗎?
- 10. 如何生成html版本的Isabelle理論
- 11. Sqoop可以在導入時執行任何ETL相關任務嗎?
- 12. 理論上講,可以在/ objC中new/init返回nil嗎?
- 13. 如何使用持久堆圖像在Isabelle/jEdit中更快加載理論?
- 14. CanScript可以導入CommonJS模塊嗎?
- 15. SQL文件可以導入到Basic4Android嗎?
- 16. python可以做「從包導入module.symbol_name」嗎?
- 17. Ruby可以導入.NET DLL嗎?
- 18. Java導入可以很慢嗎?
- 19. XMLCatalog可以用於模式導入嗎?
- 20. 我可以用php導入sql嗎?
- 21. 可以導入用於Jakefiles嗎?
- 22. 可以接受多個聚合,理論上可能不一致嗎?
- 23. Isabelle等價於Haskell newtype嗎?
- 24. 任何人都可以請幫忙嗎?無法將項目導入WaveMaker
- 25. 任何人都可以告訴我Java組合類的導入語句嗎?
- 26. ReLU可以處理負面輸入嗎?
- 27. 使用mongoimport導入CSV文件可以導入NULL嗎?
- 28. MySQL導入數據。我可以導入存儲過程嗎?
- 29. 理論上,find_end可並行化嗎?
- 30. VS2010可以導致Win7上出現任何問題嗎?
僅供參考,如果您沒有得到您要查找的答案,可能值得它在cs.stackexchange.com或cstheory.stackexchange.com上提問... – reuben
@reuben:都不是網站有工具支持。 Isabelle的[文檔](http://isabelle.in.tum.de/documentation.html)和[community](https://isabelle.in.tum.de/community)是正確的地方。 – Raphael
關閉窗口的注意事項:這個問題是關於Stack Overflow的正題。 Isabelle是一個定理證明者,它們是一種特殊的編程環境([tag:coq]和[tag:agda]是其他例子,它們在SO上有一個小的但是現有的社區)。使用編程工具是關於堆棧溢出的主題。(@Raphael不,這裏的問題很好。) – Gilles