問題タブ [equational-reasoning]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - フォルダーの観点からのフィルターの定義について、適切な等式推論を使用していますか?
さて、これはfoldrを使用したフィルター関数の定義です。
たとえば、私がこの関数を持っているとしましょう:
したがって、次のようになります。
そしてこれは
そしてこれは
そしてこれは
そしてこれは
そしてそうfoldr step [] []
です[]
:
ここで、実際にstep
関数に入ります。上から見た関数内
の定義は次のとおりです。step
myFilter
p
また、それが実際にはodd
この例の関数であることを思い出してください。
さて、再び、私たちはここにいます:
と
x = 4
最も内側step
にあり、4
奇妙ではないので、を返しys
ます。[]
だから今私たちはこれを手に入れます:
さて、最も内側のstep
、、x = 3
は3
奇数なので、を返しx:ys
ます。これは3 : []
、です[3]
。そして今、次のようになります。
そして今、内側のstep
、、は奇数ではないので、を返しx = 2
ます。これは、であるため、次のようになります。2
ys
[3]
そして今x = 1
、、、1
は奇数なので、を返します。x : ys
これは1 : [3]
、です[1,3]
。
終わり :-)。
私はすべての動きで正しいですか?
どうもありがとう :-)。
psの定義は、第4章myFilter
の本RealWorldHaskellからのものです。
acl2 - acl2 等式推論、等式の証明
私は次の関数が真であることを証明しようとしていますが、非常に明白に見えますが、それを理解するのに苦労しています!
そうすることで、関数を使用して、(app (rev x) (rev y)) が (rev (app xy)))) と同等であることを示す必要があります。
これが私が別のものをやった方法です(うまくいけば正しく)
「逆追加物」
=回転の定義
= rev の出力コントラクト
= "逆追加のもの"
= rev の出力コントラクト
= レンの定義
= rev の出力コントラクト
haskell - さまざまなfoldrステートメントを理解する
次のような単純なfoldrステートメントを理解しています
ただし、より複雑なfoldrステートメント、つまり関数で2つのパラメーターを使用するステートメントと、/および-の計算に問題があります。これらの答えを得るために発生する手順を説明できる人はいますか?
ありがとう。
haskell - Haskell は、リストのインターカレーションを元に戻すこの関数をどのように評価しますか?
Haskell がどのように評価sep [1, 2, 3, 4, 5]
して([1, 3], [2, 4, 5])
どこに到達するかを理解しようとしています:
私はこのように始めます:
しかしその後?
haskell - Haskell は、部分適用で定義されたこの関数をどのように評価しますか?
Haskellpp1 [1,2,3,4]
が[(1,2),(2,3),(3,4)]
ここに到達するためにどのように評価するかを理解しようとしています:
私はこのように始めます:
何か助けはありますか?