今天我和其他朋友谈过,他说他有逻辑编程技巧,所以我很好奇。
答案 0 :(得分:8)
wikipedia条目很好地解释了这一点:虽然从表面上看它似乎是一个多余的术语,因为所有的编程都使用逻辑,实际上它是一个明确定义的范例,比如说,“函数式编程”和“面向对象编程“。具体地,
逻辑编程,在更窄的范围内 更常见的感觉 理解,就是用逻辑作为 声明性和程序性 表达语言。它是基于 事实上,倒退 推理定理 - 证明器适用于 陈述形式的陈述句 影响:
If B1 and … and Bn then H
将其含义视为 目标缩减程序:
to show/solve H, show/solve B1 and … and Bn.
语言Prolog
(在某些变体或其他变体中)可能仍然是最流行的逻辑编程语言。
答案 1 :(得分:1)
我通常理解它意味着使用prolog。 Prolog允许您定义谓词和真值。然后,prolog解释器可以使用标准逻辑规则获得进一步的“真理”。例如,以下每一行在第一个和第二个参数之间建立father_child
和mother_children
关系(提到的人来自辛普森一家)。
member(X, [X|_]).
member(X, [_|T]) :- member(X,T).
mother_children(marge, [bart, lisa, maggie]).
mother_children(mona, [homer, jay]).
mother_child(X, Y) :- mother_children(X, C), member(Y, C).
father_child(homer, bart).
father_child(homer, lisa).
father_child(homer, maggie).
father_child(abe, homer).
father_child(abe, herb).
father_child(abe, abbie).
sibling(X, Y) :- parent_child(Z, X), parent_child(Z, Y).
parent_child(X, Y) :- father_child(X, Y).
parent_child(X, Y) :- mother_child(X, Y).
如果你将这个程序解释为prolog解释器,然后问它sibling(X,Y)
,它将返回给你所有存在的兄弟姐妹对。有趣的是,我们从不明确地说,巴特是丽莎的兄弟姐妹。我们只是定义父亲和母亲的关系,但是通过定义进一步的规则,prolog使用常规规则来推导出满足sibling
规则的名称。
Prolog在80年代,各种AI系统等中更受欢迎。这些天有点过时了(不是你在大学里知道的,它仍然是热门的东西)。
答案 2 :(得分:-2)
我会将该陈述称为“我可以编制if
/ then
/ else
语句”。换句话说,我会用这句话来表示“我不能用任何真正的技术编程”。我不会留下深刻的印象。