【发布时间】:2023-03-26 15:01:01
【问题描述】:
我想在 haskell 中编写一个函数来确定布尔函数(在 ghci 中使用 lambda 表达式输入)是否是重言式。 输入应如下所示:
taut n (\[x..] -> ... == ...)
taut 3 (\[x,y,z] -> ((x||y)||z) == (x||(y||z)) )
我已经用
创建了所有可能的布尔组合combinations n = replicateM n [True,False]
cmb n = concat (combinations n)
但现在我需要一个函数来获取列表中的这些元素并将它们插入到 then 输入函数中的 n 个变量中。
提前致谢:)
【问题讨论】:
-
这不是真正的家庭作业,它是大学模块的额外作业......如果我们愿意,我们可以这样做,但这不是必需的 - 但我想这样做,因为我想至少以某种方式了解haskell ...