私はタイプを持っています
Variable l: list (a * b * option c * option d).
Variable ls : list (list l).
リストの先頭からタイプを取得し、option d
その後リスト全体を確認したいと思います。私のコードは次のようになります。
Definition test (l: list (a * b * option c * option d)):=
match l with
| nil => ... (* not important *)
| (_,_,_,od) :: l' =>
match od with
| None => ... (* not important *)
| Some d => if forallb (fun li => forallb (fun ci => do_something ci d)) ls) l'
end
end.
私の質問は、リスト全体でテストしたいので、if forallb (fun li => forallb (fun ci =>do_something ci d))ls)l'
追加したテストです。しかし、私はその議論をまったく使用しませんでした。forallb (fun li =>...)
l'
li
編集:私の質問はに焦点を当てていif forallb (fun li => forallb (fun ci => do_something ci d))ls)l'
ます。forallb (fun li =>
リストの残りの部分でテストしたいので、追加しましたl'
。このテストforallb (fun li
をアーカイブすることはできif (forallb (fun ci => do_something ci d))ls
ませんが、リストでこの状態を再度テストする方法がわかりませんl'
。