loop-invariant

    2熱度

    1回答

    我開始學習Dafny並學習了不變式。我有這樣的代碼: function pot(m:int, n:nat): int { if n==0 then 1 else if n==1 then m else if m==0 then 0 else pot(m,n-1) * m } method Pot(m:int, n:nat) returns (x:int

    0熱度

    1回答

    我正在研究如何使用dafny驗證使用「交換」相鄰元素的插入排序,但我無法找到while循環的合理不變量,誰能幫我修復它? 這裏是鏈接:http://rise4fun.com/Dafny/wmYME

    0熱度

    1回答

    k :=0 for i ←1 to n c←a[i] k←k+1 這並沒有改變的事情是要知道元素

    3熱度

    1回答

    我有一個函數sum採用兩個陣列a和b作爲輸入並修改b使得b[i] = a[0] + a[1] + ... + a[i]。我寫了這個函數,想用Dafny來驗證它。但是,Dafny告訴我,我的循環不變可能不會被循環維護。這裏是代碼: function sumTo(a:array<int>, n:int) : int requires a != null; requires 0 <=

    2熱度

    1回答

    我們知道循環變體被定義爲在循環的每次迭代之前和之後都是真的語句。但是這個定義太鬆了嗎?讓我們看一個具體的例子:線性搜索。 輸入:索引:n個A =(A 1 ,一個,一個,...,一個Ñ)和一個值v 輸出的序列我使得v = A [1]或NIL如果v是沒有在甲 這裏發現是我的僞代碼: linear_search(A, v) 1 for i ∈ {1, 2, ..., n} 2 if A[i] =

    0熱度

    1回答

    前提條件:len(list)> = 2的整數列表 後置條件:返回第二小的值。如果列表中存在兩個最小值,則返回最小值。 def SecondSmallest(list): 1 smallest = min(list[0], list[1]) 2 second_smallest = max(list[0], list[1]) 3 i = 2 4 while i < len(list): 5

    1熱度

    2回答

    import tensorflow as tf cluster_size = tf.constant(6) # size of the cluster m = tf.constant(6) # number of contigs (column size) n = tf.constant(3) # number of points in a single contigs (column s

    2熱度

    1回答

    有關終止函數定義的問題。 我們有一個相對簡單的函數來計算輸入的₂log2n⌋。 LOG2 Configuration: {[r, n] | Integers r ≥ 0 and n ≥ 1} [r, n] -> [r + 1, n/2] if n > 1 ∧ n even [r, n] -> [r, n − 1] if n > 1 ∧ n odd 而且我們問過一些終端功能μ(R,N)是否

    17熱度

    1回答

    考慮解決100 prisoners and a lightbulb問題的標準策略。這是我嘗試它Dafny型號: method strategy<T>(P: set<T>, Special: T) returns (count: int) requires |P| > 1 && Special in P ensures count == (|P| - 1) decrea

    2熱度

    1回答

    我有一個數組「行」,其中包含一個字符串中包含長度「l」和一個數組「nl」,其中包含一個字符串中的長度「p」。 注意:「l」和「p」不一定是每個對應數組的長度。參數「at」將是在「line」內進行插入的位置。 恢復:長度爲「p」的數組將被插入到「行」中,將位置(at,i,at + p),'p'位置之間的所有字符移動到右邊以便插入。 我確保的邏輯是檢查插入「行」的元素是否具有相同的順序,並且與包含在「