![](/img/trans.png)
[英]In Lean, how can i get the element from an exists_unique in a definition
我想做以下 我嘗試使用 exists.elim 和 exists_unique.elim 但我不知道如何正確使用它們,我也不能使用 h.some 因為我沒有使用選擇的公理。 我只想知道如何構造證明它定義明確的函數,謝謝。 ...
[英]In Lean, how can i get the element from an exists_unique in a definition
我想做以下 我嘗試使用 exists.elim 和 exists_unique.elim 但我不知道如何正確使用它們,我也不能使用 h.some 因為我沒有使用選擇的公理。 我只想知道如何構造證明它定義明確的函數,謝謝。 ...
[英]How to proceed in Isabelle when the goal has implications and existentials?
我正在嘗試以 Isabelle 的“結構化風格”編寫證明,但我不確定如何指定存在變量的值。 具體來說,我正在嘗試擴展此證明中的sorry s: Zero 、 add和mul是在一個類似 nat 的類上定義的,我只是為了編寫簡單的數論證明而創建的,希望這是直觀的。 我已經以“應用”風格完成了這項工 ...
[英]Proving a Type is Uninhabited in Agda
我最近一直在學習 Agda,並且取得了很大的進步,但我堅持做一件事:證明一種類型不存在。 我在Bool上有一個關系,定義如下: direct構造函數定義了一些關系,而indirect構造函數添加了傳遞閉包。 顯然,在此示例中,傳遞閉包沒有添加任何內容,但在我處理的實際問題中它很重要。 我想證明te ...
[英]Does Z3 (and other solvers) always use terminating decision procedures when possible?
我正在研究決策程序,另一方面,我也在研究 Z3。 具體來說,我正在研究 arrays 的一階理論的不同可判定片段。 例如,論文 [1] 提出了 arrays 的∃∗∀∗片段,我們可以為此證明以下屬性:例如∀i. 0 ≤ i < n → a[i+1] = a[i]−1 ∀i. 0 ≤ i & ...
[英]How to rearrange newly defined associative terms in Coq?
我想知道在 Coq 中重新排列關聯項的最優雅的方式是什么。 我認為對於一些現有的運營商來說,這是一個定義明確的問題,比如plus 。 我已經用相應的類型定義了新的關聯運算符和操作數。 簡而言之,關聯引理指出Lemma assoc: forall AB C: sometype, A # (B # C ...
[英]How do you do equational reasoning for user defined equational relations with agda-stdlib?
agda-stdlib 具有為各種特定庫定義的關系( 示例)進行等式推理的工具。 它還有一個類型,用於標識此處定義的相等關系。 出於等式原因,我通過命題平等獲得相同設施的最簡單方法是什么。 ...
[英](Semi-decidable) combination of first-order theories is possible in Z3, but what about an actual semantic/signature-wise combination?
免責聲明:這是一個相當理論的問題,但認為它適合這里; 如果沒有,請告訴我一個替代方案:) Z3 看起來很有表現力最近,我意識到我可以在 Z3 中指定這種類型的公式: 這是代碼(在 Python 中): 我們可以看到它是如何輸出sat和輸出模型的。 但... 然而,即使這種表達能力是有用的(至少對 ...
[英]How expressive can we be with arrays in Z3(Py)? An example
我的第一個問題是我是否可以在 Z3Py 中表達以下公式: Exists i::Integer st (0<=i<|arr|) & (avg(arr)+t<arr[i]) 這意味着:是否存在position i::0<i<|arr| 在其值a[i]大於數組avg( ...
[英]Any comparison between different SMT solvers?
我在 Python 中有一個使用定理證明的實現。 我想知道是否有可能加快SMT求解部分,目前正在使用Z3。 我正在嘗試發現不同的求解器,並發現 cvc4/cvc5 和 Yices 作為多理論(算術、相等、位向量...)求解器。 我還發現了 dReal 和 MetiTarski(這個似乎已經過時了) ...
[英]Lawvere's fixed point theorem in agda
我一直在努力在agda 中證明更基本的勞維爾不動點定理。 正是我試圖找出底部定理的證明。 關於如何處理涉及存在論的類似證明的一般提示也會有所幫助。 ...
[英]Inductive proofs in theorem provers (Z3, Vampire, with TPTP syntax)
我正在使用 TPTP 語法測試一些定理證明器(例如 Z3、Alt-Ergo、Vampire 等)的歸納能力。 令我驚訝的是,他們都沒有設法證明以下簡單的猜想: 這個猜想可以很容易地通過歸納來證明,但是對於我測試過的絕大多數定理證明者來說似乎並非如此。 顯然,如果我將域限制為僅一個元素而不是整組整數 ...
[英]Applying known proofs in Idris 1 interactive elaborator
我試圖通過練習熟悉 Idris1 中的定理證明,但遇到了麻煩。 假設我有以下自然數定義和我想證明的以下定理: 我已經為前三個寫了證明。 現在,當我想證明最后定理時,我遇到了應用早期證明的必要性。 在此階段應用plusZero是很自然的,但我在嘗試這樣做時遇到了問題。 我嘗試通過rewriteWith ...
[英]Haskell theorem proving tactics as indexed functors and monads
我正在嘗試按照 這篇博文在 Haskell 中制作一個簡單的直覺定理證明語言。van Bakel 先生建議使用索引單子來證明 state 操作; 這是索引 monad 的構建部分(相當於Control.Monad.Indexed的定義):class IFunctor f where imap : ...
[英]How does one define dependent type with named arguments in Coq without issues in unification in the constructors?
我想定義一個加長的列表,但我喜歡 arguments,名稱位於歸納定義的頂部。 每當我嘗試我希望工作的東西出現統一錯誤時,我被迫做一個明顯有錯誤的定義,例如允許一個列表,其中所有內容的長度都是 0 但有 1 個元素。 我該如何解決? ...
[英]How to use soft constraints in Z3-Python to express 'abstract' biases in SAT search: such as 'I prefer half of the literals to be true and half false'
我之前在How to bias Z3's (Python) SAT solving to a criteria, such as 'preferring' to have more negated literals中問過,在 Z3 (Python) 中是否有辦法將 SAT 搜索“偏向”一個“標准” ...
[英]SMT solvers or an alternative for uninterpreted symbols + ∀
我想使用 Z3 來證明具有通用量詞的公理的定理,但 Z3 似乎不適合我的問題。 它能夠解決一些這樣的問題,但它似乎時不時地卡住了。 如果不是 Z3,我還可以使用哪些其他工具? 為了讓您了解問題的類型,我想從公理/假設{∀….P₁, …, ∀….Pₘ}證明∀….Pₙ Pₙ。 所有符號都是未解釋的,所 ...
[英]How to bias Z3's (Python) SAT solving towards a criteria, such as 'preferring' to have more negated literals
在 Z3(Python)中,有什么方法可以讓 SAT 搜索“偏向”“標准”? 一個案例示例:我希望 Z3 獲得一個 model,但不是任何 model:如果可能的話,給我一個 model,它有大量的反義文字。 因此,例如,如果我們必須搜索A or B一個可能的 model 是[A = True, B ...
[英]Some questions about incremental SAT in Z3: can it be deactivated? Which techniques are used inside?
我仍在學習 Z3 (Python) 的膽量。 我注意到Z3 默認執行增量 SAT 求解(請參閱SAT 查詢在 Z3-Python 中變慢:增量 SAT 怎么樣? ):具體來說,每次使用s.add命令時(其中s是求解器),這意味着它將該子句添加到s中,但它不會忘記您之前學到的所有內容。 第一個問題: ...
[英]Modifying the divide and conquer SAT search in Z3-Python
我正在嘗試修改 Z3(Python)中的分而治之 SAT 搜索,但感覺完全迷失了。 我將分三個部分解釋我的問題。 介紹我正在使用其默認增量選項(即使用add )在 Z3 中執行 SAT 搜索循環。 但是,我意識到我的搜索是“找到我所有解決方案”類型的簡單枚舉,其中包括“添加先前 model 的否定並 ...
[英]In Z3-Python, I get "builtin_function_or_method' object is not iterable" when performing model search
我正在探索在 Z3 (Python) 中執行 SAT 求解的快速方法。 為此,我試圖模仿https://theory.stanford.edu/~nikolaj/programmingz3.html#sec-blocking-evaluations的第 5.1 章的結果。 我正在使用的代碼如下: ...