方案:从嵌套列表中删除元素
给定一个命题公式,即((a和(b暗示c)或(d和(e暗示f))))
, 我需要编写一个Scheme函数来删除连接词and
、implies
、or
。 函数的返回包含公式中的所有变量。例如, <代码>(abcdef)。
我什至不知道如何开始这样做,因为我不确定如何进入嵌套列表并删除和cons
某些变量和连接词。
Given a propositional formula, i. e. ((a and (b implies c) or (d and (e implies f))))
,
I need to write a Scheme function to remove the connectives, and
, implies
, or
.
The the return of the function contains all variables in the formula. For instance,(a b c d e f)
.
I am not sure how to even get started on this, because I am unsure how to get inside the nested lists and remove and cons
certain variables and connectives.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我会从以下内容开始:
测试:
更新:好的,@karategeek6 报告说,他没有
展平
和过滤器
在他的Scheme解释器中,我不确定你这样做,所以让我们手动实现它们,因为R^6RS中也没有filter
和flatten
:修改
remove-vars 和
filter-two
:您应该获得与上述过程的早期版本相同的输出。
I would start up with something like the following:
Test:
UPDATE: OK, @karategeek6 reported, that he doesn't have
flatten
andfilter
in his Scheme interpreter, and I'm not sure you do, so let's implement them manually, because there are nofilter
andflatten
in R^6RS either:Modify
remove-vars
andfilter-two
appropriately:You should get the same output as with previous versions of the above procedures.