From 8e468b30f727a3ae2a18f21bd278c9bea867cd78 Mon Sep 17 00:00:00 2001 From: Michael Leuschel <leuschel@uni-duesseldorf.de> Date: Tue, 18 Oct 2022 16:41:17 +0200 Subject: [PATCH] add second notebook for Prolog Signed-off-by: Michael Leuschel <leuschel@uni-duesseldorf.de> --- logic_programming/1_IntroProlog.pdf | Bin 0 -> 75443 bytes logic_programming/2_IntroProlog.ipynb | 3737 +++++++++++++++++++++++++ logic_programming/2_IntroProlog.pdf | Bin 0 -> 125518 bytes 3 files changed, 3737 insertions(+) create mode 100644 logic_programming/1_IntroProlog.pdf create mode 100644 logic_programming/2_IntroProlog.ipynb create mode 100644 logic_programming/2_IntroProlog.pdf diff --git a/logic_programming/1_IntroProlog.pdf b/logic_programming/1_IntroProlog.pdf new file mode 100644 index 0000000000000000000000000000000000000000..971619340373ee1e712a6a6c33d1fecff49ff8be GIT binary patch literal 75443 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NMu^V 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ΧXU;1(^J;_e(gfDfqnR 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 RE^`x017j{#RabvEE&%$CB)0$n literal 0 HcmV?d00001 diff --git a/logic_programming/2_IntroProlog.ipynb b/logic_programming/2_IntroProlog.ipynb new file mode 100644 index 0000000..aa66247 --- /dev/null +++ b/logic_programming/2_IntroProlog.ipynb @@ -0,0 +1,3737 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "7359298e-63ac-4080-9139-aa90c8043b2a", + "metadata": {}, + "source": [ + "# A more systematic introduction to Prolog" + ] + }, + { + "cell_type": "markdown", + "id": "49fd5211", + "metadata": {}, + "source": [ + "### Propositions\n", + "Prolog programs consist of <b>clauses</b>.\n", + "A clause is always terminated by a dot (```.```).\n", + "Propositions start with a lower case letter or you can use quotes to use (almost) arbitrary strings as propositions.\n", + "The simplest clauses are facts. Here we define three propositions to be true, for the last two we use quotes:" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "id": "93e05f7b-a91c-4262-861e-a399e094b710", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:rains/0 were retracted (click to expand)</summary><pre>:- dynamic rains/0.\n", + "\n", + "rains.\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:rains/0 were retracted:\n", + ":- dynamic rains/0.\n", + "\n", + "rains.\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:rains/0\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:I am not wearing a hat/0 were retracted (click to expand)</summary><pre>:- dynamic'I am not wearing a hat'/0.\n", + "\n", + "'I am not wearing a hat'.\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:I am not wearing a hat/0 were retracted:\n", + ":- dynamic'I am not wearing a hat'/0.\n", + "\n", + "'I am not wearing a hat'.\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:I am not wearing a hat/0\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:The sun is shining/0 were retracted (click to expand)</summary><pre>:- dynamic'The sun is shining'/0.\n", + "\n", + "'The sun is shining'.\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:The sun is shining/0 were retracted:\n", + ":- dynamic'The sun is shining'/0.\n", + "\n", + "'The sun is shining'.\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:The sun is shining/0\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:beach/0 were retracted (click to expand)</summary><pre>:- dynamic beach/0.\n", + "\n", + "beach :-\n", + " fail.\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:beach/0 were retracted:\n", + ":- dynamic beach/0.\n", + "\n", + "beach :-\n", + " fail.\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:beach/0\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "rains.\n", + "'I am not wearing a hat'.\n", + "'The sun is shining'.\n", + "beach :- fail." + ] + }, + { + "cell_type": "markdown", + "id": "b05ae74b", + "metadata": {}, + "source": [ + "We can now ask the Prolog system whether the sun is shining:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "14013336", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1;31mfalse" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- beach." + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "id": "20b05b2c", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?-'The sun is shining'." + ] + }, + { + "cell_type": "markdown", + "id": "50c188fa", + "metadata": {}, + "source": [ + "More complicated clauses make use of the implication operator ```:-```. They are also called rules. Logically they stipulate that the left-hand side of the clause must be true if the right-hand side is true. The right-hand side can contain multiple propositions separated by commas. The comma can be read as a logical conjunction (and)." + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "2b8b84a0", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:carry_umbrella/0 were retracted (click to expand)</summary><pre>:- dynamic carry_umbrella/0.\n", + "\n", + "carry_umbrella :-\n", + " rains,\n", + " 'I am not wearing a hat'.\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:carry_umbrella/0 were retracted:\n", + ":- dynamic carry_umbrella/0.\n", + "\n", + "carry_umbrella :-\n", + " rains,\n", + " 'I am not wearing a hat'.\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:carry_umbrella/0\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:rainbow/0 were retracted (click to expand)</summary><pre>:- dynamic rainbow/0.\n", + "\n", + "rainbow :-\n", + " rains,\n", + " 'The sun is shining'.\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:rainbow/0 were retracted:\n", + ":- dynamic rainbow/0.\n", + "\n", + "rainbow :-\n", + " rains,\n", + " 'The sun is shining'.\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:rainbow/0\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "carry_umbrella :- rains, 'I am not wearing a hat'.\n", + "rainbow :- rains, 'The sun is shining'." + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "4e6314e8", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- rainbow." + ] + }, + { + "cell_type": "markdown", + "id": "161b0f75", + "metadata": {}, + "source": [ + "The corresponding logic formula to the rule for `rainbow` is \n", + "`rainbow ← rains ∧ 'The sun is shining'`" + ] + }, + { + "cell_type": "markdown", + "id": "d7254b1b", + "metadata": {}, + "source": [ + "### Predicates\n", + "Instead of propositions we can also use predicates with arguments within our clauses. The arguments to predicates denote objects for which the predicate is true. Arguments which start with an upper-case letter are logical variables. Below ```X``` is such a variable and it can stand for any object." + ] + }, + { + "cell_type": "markdown", + "id": "5f5810f7", + "metadata": {}, + "source": [ + "Prolog provides a few built-in predicates like `>` or `=` or `is`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c646de97", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1;31mfalse" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- 2>3." + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "600c0ea6", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = 5" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- is(X,3+2)." + ] + }, + { + "cell_type": "markdown", + "id": "0686241a", + "metadata": {}, + "source": [ + "Let us now define our own predicates.\n", + "In this case `mother/2` and `grandma/2`.\n", + "Note: we often use the notation `p/n` to denote the fact that the predicate `p` takes `n` arguments. `n` is called the arity of `p`." + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "id": "1d6eed4f", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:mother/2 were retracted (click to expand)</summary><pre>:- dynamic mother/2.\n", + "\n", + "mother(a, b).\n", + "mother(b, c).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:mother/2 were retracted:\n", + ":- dynamic mother/2.\n", + "\n", + "mother(a, b).\n", + "mother(b, c).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:mother/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:grandma/2 were retracted (click to expand)</summary><pre>:- dynamic grandma/2.\n", + "\n", + "grandma(A, B) :-\n", + " mother(A, C),\n", + " mother(C, B).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:grandma/2 were retracted:\n", + ":- dynamic grandma/2.\n", + "\n", + "grandma(A, B) :-\n", + " mother(A, C),\n", + " mother(C, B).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:grandma/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "mother(a,b).\n", + "mother(b,c).\n", + "grandma(a,c) :- mother(a,b),mother(b,c)." + ] + }, + { + "cell_type": "markdown", + "id": "e645f31e", + "metadata": {}, + "source": [ + "You can now ask questions about logical consequences of your logic program. In simple queries you provide all arguments:" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "a2ab9e95", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?-grandma(a,c)." + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "id": "838bc91a", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- grandma(a,c) ; mother(c,d)." + ] + }, + { + "cell_type": "markdown", + "id": "c8d0600e", + "metadata": {}, + "source": [ + "## Logical variables\n", + "Variables start with an upper-case letter or an underscore.\n", + "Variables are called `logical variables` in Prolog: once assigned, their value is immutable and cannot be changed (except upon backtracking)." + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "id": "93e47505", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = 1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- X=1." + ] + }, + { + "cell_type": "markdown", + "id": "d82e2815", + "metadata": {}, + "source": [ + "Above we have set the logical variable `X` to 1. The scope of the name `X` is a Prolog clause (i.e., a fact or rule or a query). Thus, in the query below we talk about another `X`:" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "0c4d96e2", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- X=2." + ] + }, + { + "cell_type": "markdown", + "id": "3a3b14b8", + "metadata": {}, + "source": [ + "However, in the same scope we cannot change the value of `X`, once assigned:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "47e57f93", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1;31mfalse" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- X=1, X=2." + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "d9369af3", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = 1,\n", + "X2 = 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- X=1, X2 is X+1." + ] + }, + { + "cell_type": "markdown", + "id": "fdbee9bb", + "metadata": {}, + "source": [ + "Within a clause variables are implicitly unversally quantified.\n", + "Let us now define the grandma predicate in a more general fashion:" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "id": "7fd70461", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:grandma/2 were retracted (click to expand)</summary><pre>:- dynamic grandma/2.\n", + "\n", + "grandma(a, c) :-\n", + " mother(a, b),\n", + " mother(b, c).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:grandma/2 were retracted:\n", + ":- dynamic grandma/2.\n", + "\n", + "grandma(a, c) :-\n", + " mother(a, b),\n", + " mother(b, c).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:grandma/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "grandma(X,Y) :- mother(X,Z), mother(Z,Y)." + ] + }, + { + "cell_type": "markdown", + "id": "51f5f6a4", + "metadata": {}, + "source": [ + "The above clause is equivalent to this logical formula:\n", + "\n", + "`∀ X,Y,Z . grandma(X,Y) ← mother(X,Z)∧ mother(Z,Y)`\n", + "\n", + "Let us query the predicate:" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "id": "81724623", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = c" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- grandma(a,X)." + ] + }, + { + "cell_type": "markdown", + "id": "3dce4ccd", + "metadata": {}, + "source": [ + "When we have variables in a query, Prolog gives us solutions for variables such that the instantiated predicate calls are logical consequences of your program.\n", + "\n", + "We can find all solutions using the `print_table` command of our Jupyter kernel:" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "id": "4d656338", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/markdown": [ + "X | \n", + ":- | \n", + "c | " + ], + "text/plain": [ + "X | \n", + ":- | \n", + "c | " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_table(grandma(a,X))" + ] + }, + { + "cell_type": "markdown", + "id": "d90546b0", + "metadata": {}, + "source": [ + "Prolog also has a built-in predicate called ```findall``` which can be used to find all solutions in one go:" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "id": "a7478245", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mResults = [c]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?-findall(X,grandma(a,X),Results)." + ] + }, + { + "cell_type": "markdown", + "id": "74c96ce2", + "metadata": {}, + "source": [ + "### Prolog terms and substitutions\n", + "\n", + "Terms represent data values (aka objects). We have that\n", + "- constants like `a` and `b` are terms\n", + "- variables like `X` are terms\n", + "- terms can also be constructed using function symbols\n", + "\n", + "A predicate call takes terms as arguments.\n", + "E.g. for `grandma(a,X)` we have the term `a` as first argument and the term `X` as second argument." + ] + }, + { + "cell_type": "markdown", + "id": "fd8a78b7", + "metadata": {}, + "source": [ + "## Exercise\n", + "Let us try exercise 2.1.1 (iii) from the Art of Prolog (https://mitpress.mit.edu/9780262691635/the-art-of-prolog/), describing the layout of Figure 2.3 using `left_of/2` and `above/2`." + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "9e3be61b", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:left_of/2 were retracted (click to expand)</summary><pre>:- dynamic left_of/2.\n", + "\n", + "left_of(bicycle, camera).\n", + "left_of(pencil, hourglass).\n", + "left_of(hourglass, butterfly).\n", + "left_of(butterfly, fish).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:left_of/2 were retracted:\n", + ":- dynamic left_of/2.\n", + "\n", + "left_of(bicycle, camera).\n", + "left_of(pencil, hourglass).\n", + "left_of(hourglass, butterfly).\n", + "left_of(butterfly, fish).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:left_of/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:above/2 were retracted (click to expand)</summary><pre>:- dynamic above/2.\n", + "\n", + "above(bicycle, pencil).\n", + "above(camera, butterfly).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:above/2 were retracted:\n", + ":- dynamic above/2.\n", + "\n", + "above(bicycle, pencil).\n", + "above(camera, butterfly).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:above/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "left_of(bicycle,camera).\n", + "left_of(pencil,hourglass).\n", + "left_of(hourglass,butterfly).\n", + "left_of(butterfly,fish).\n", + "\n", + "above(bicycle,pencil).\n", + "above(camera,butterfly)." + ] + }, + { + "cell_type": "markdown", + "id": "db2baf14", + "metadata": {}, + "source": [ + "We can use the Jupyter notebook to render the graph.\n", + "The `print_transition_graph` predicate requires a ternary predicate,\n", + "so that we can provide the edge labels:" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "6781d789", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:edge/3 were retracted (click to expand)</summary><pre>:- dynamic edge/3.\n", + "\n", + "edge(A, above, B) :-\n", + " above(A, B).\n", + "edge(A, left_of, B) :-\n", + " left_of(A, B).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:edge/3 were retracted:\n", + ":- dynamic edge/3.\n", + "\n", + "edge(A, above, B) :-\n", + " above(A, B).\n", + "edge(A, left_of, B) :-\n", + " left_of(A, B).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:edge/3\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "edge(A,above,B) :- above(A,B).\n", + "edge(A,left_of,B) :- left_of(A,B)." + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "bb98ad05", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mA = bicycle,\n", + "B = above,\n", + "C = pencil" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- edge(A,B,C)." + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "id": "186fe078", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n", + "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n", + " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n", + "<!-- Generated by graphviz version 6.0.1 (20220911.1526)\n", + " -->\n", + "<!-- Pages: 1 -->\n", + "<svg width=\"168pt\" height=\"413pt\"\n", + " viewBox=\"0.00 0.00 167.59 413.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n", + "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 409)\">\n", + "<polygon fill=\"white\" stroke=\"none\" points=\"-4,4 -4,-409 163.59,-409 163.59,4 -4,4\"/>\n", + "<!-- bicycle -->\n", + "<g id=\"node1\" class=\"node\">\n", + "<title>bicycle</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"86.2\" cy=\"-387\" rx=\"36.29\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"86.2\" y=\"-383.3\" font-family=\"Times,serif\" font-size=\"14.00\">bicycle</text>\n", + "</g>\n", + "<!-- pencil -->\n", + "<g id=\"node2\" class=\"node\">\n", + "<title>pencil</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"54.2\" cy=\"-300\" rx=\"32.49\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"54.2\" y=\"-296.3\" font-family=\"Times,serif\" font-size=\"14.00\">pencil</text>\n", + "</g>\n", + "<!-- bicycle->pencil -->\n", + "<g id=\"edge1\" class=\"edge\">\n", + "<title>bicycle->pencil</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M73.75,-370.02C69.83,-364.3 65.84,-357.62 63.2,-351 60.35,-343.87 58.4,-335.82 57.07,-328.28\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"60.49,-327.51 55.56,-318.14 53.57,-328.54 60.49,-327.51\"/>\n", + "<text text-anchor=\"middle\" x=\"79.7\" y=\"-339.8\" font-family=\"Times,serif\" font-size=\"14.00\">above</text>\n", + "</g>\n", + "<!-- camera -->\n", + "<g id=\"node3\" class=\"node\">\n", + "<title>camera</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"123.2\" cy=\"-246\" rx=\"36.29\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"123.2\" y=\"-242.3\" font-family=\"Times,serif\" font-size=\"14.00\">camera</text>\n", + "</g>\n", + "<!-- bicycle->camera -->\n", + "<g id=\"edge3\" class=\"edge\">\n", + "<title>bicycle->camera</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M91.16,-368.93C92.8,-363.24 94.6,-356.85 96.2,-351 103.33,-324.83 111.07,-294.83 116.43,-273.8\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"119.86,-274.52 118.93,-263.97 113.07,-272.8 119.86,-274.52\"/>\n", + "<text text-anchor=\"middle\" x=\"117.7\" y=\"-339.8\" font-family=\"Times,serif\" font-size=\"14.00\">left_of</text>\n", + "</g>\n", + "<!-- hourglass -->\n", + "<g id=\"node5\" class=\"node\">\n", + "<title>hourglass</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"44.2\" cy=\"-192\" rx=\"44.39\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"44.2\" y=\"-188.3\" font-family=\"Times,serif\" font-size=\"14.00\">hourglass</text>\n", + "</g>\n", + "<!-- pencil->hourglass -->\n", + "<g id=\"edge4\" class=\"edge\">\n", + "<title>pencil->hourglass</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M46.6,-282.25C44.4,-276.58 42.3,-270.12 41.2,-264 38.61,-249.63 39.06,-233.37 40.29,-220.04\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"43.77,-220.39 41.4,-210.07 36.81,-219.62 43.77,-220.39\"/>\n", + "<text text-anchor=\"middle\" x=\"59.7\" y=\"-242.3\" font-family=\"Times,serif\" font-size=\"14.00\">left_of</text>\n", + "</g>\n", + "<!-- butterfly -->\n", + "<g id=\"node4\" class=\"node\">\n", + "<title>butterfly</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"84.2\" cy=\"-105\" rx=\"40.89\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"84.2\" y=\"-101.3\" font-family=\"Times,serif\" font-size=\"14.00\">butterfly</text>\n", + "</g>\n", + "<!-- camera->butterfly -->\n", + "<g id=\"edge2\" class=\"edge\">\n", + "<title>camera->butterfly</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M122.78,-227.86C121.78,-206.77 118.41,-170.16 107.2,-141 105.9,-137.64 104.25,-134.27 102.43,-131.02\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"105.24,-128.92 96.98,-122.29 99.3,-132.63 105.24,-128.92\"/>\n", + "<text text-anchor=\"middle\" x=\"137.7\" y=\"-188.3\" font-family=\"Times,serif\" font-size=\"14.00\">above</text>\n", + "</g>\n", + "<!-- fish -->\n", + "<g id=\"node6\" class=\"node\">\n", + "<title>fish</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"84.2\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"84.2\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">fish</text>\n", + "</g>\n", + "<!-- butterfly->fish -->\n", + "<g id=\"edge6\" class=\"edge\">\n", + "<title>butterfly->fish</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M84.2,-86.8C84.2,-75.16 84.2,-59.55 84.2,-46.24\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"87.7,-46.18 84.2,-36.18 80.7,-46.18 87.7,-46.18\"/>\n", + "<text text-anchor=\"middle\" x=\"102.7\" y=\"-57.8\" font-family=\"Times,serif\" font-size=\"14.00\">left_of</text>\n", + "</g>\n", + "<!-- hourglass->butterfly -->\n", + "<g id=\"edge5\" class=\"edge\">\n", + "<title>hourglass->butterfly</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M52.1,-174.21C57.74,-162.22 65.44,-145.85 71.89,-132.16\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"75.22,-133.3 76.31,-122.76 68.88,-130.32 75.22,-133.3\"/>\n", + "<text text-anchor=\"middle\" x=\"84.7\" y=\"-144.8\" font-family=\"Times,serif\" font-size=\"14.00\">left_of</text>\n", + "</g>\n", + "</g>\n", + "</svg>\n" + ], + "text/plain": [ + "digraph {\n", + " \"bicycle\" -> \"pencil\" [label=\"above\"]\n", + " \"camera\" -> \"butterfly\" [label=\"above\"]\n", + " \"bicycle\" -> \"camera\" [label=\"left_of\"]\n", + " \"pencil\" -> \"hourglass\" [label=\"left_of\"]\n", + " \"hourglass\" -> \"butterfly\" [label=\"left_of\"]\n", + " \"butterfly\" -> \"fish\" [label=\"left_of\"]\n", + "}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_transition_graph(edge/3, 1, 3, 2)." + ] + }, + { + "cell_type": "markdown", + "id": "4ffad2ee", + "metadata": {}, + "source": [ + "We now define the predicates `right_of` and `below` in terms of the existing predicates:" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "de721f76", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:right_of/2 were retracted (click to expand)</summary><pre>:- dynamic right_of/2.\n", + "\n", + "right_of(A, B) :-\n", + " left_of(B, A).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:right_of/2 were retracted:\n", + ":- dynamic right_of/2.\n", + "\n", + "right_of(A, B) :-\n", + " left_of(B, A).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:right_of/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:below/2 were retracted (click to expand)</summary><pre>:- dynamic below/2.\n", + "\n", + "below(A, B) :-\n", + " above(B, A).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:below/2 were retracted:\n", + ":- dynamic below/2.\n", + "\n", + "below(A, B) :-\n", + " above(B, A).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:below/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "right_of(X,Y) :- left_of(Y,X).\n", + "below(X,Y) :- above(Y,X)." + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "ea9e3961", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/markdown": [ + "X | Y | \n", + ":- | :- | \n", + "camera | bicycle | \n", + "hourglass | pencil | \n", + "butterfly | hourglass | \n", + "fish | butterfly | " + ], + "text/plain": [ + "X | Y | \n", + ":- | :- | \n", + "camera | bicycle | \n", + "hourglass | pencil | \n", + "butterfly | hourglass | \n", + "fish | butterfly | " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_table(right_of(X,Y))" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "id": "9febc43e", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:next/2 were retracted (click to expand)</summary><pre>:- dynamic next/2.\n", + "\n", + "next(A, B) :-\n", + " edge(A, _, B).\n", + "next(A, B) :-\n", + " edge(B, _, A).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:next/2 were retracted:\n", + ":- dynamic next/2.\n", + "\n", + "next(A, B) :-\n", + " edge(A, _, B).\n", + "next(A, B) :-\n", + " edge(B, _, A).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:next/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "% next(A,B) :- above(A,B); below(A,B) ; left_of(A,B) ; right_of(A,B).\n", + "next(A,B) :- edge(A,_,B).\n", + "next(A,B) :- edge(B,_,A)." + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "id": "180088b8", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/markdown": [ + "X | Y | \n", + ":- | :- | \n", + "bicycle | pencil | \n", + "camera | butterfly | \n", + "bicycle | camera | \n", + "pencil | hourglass | \n", + "hourglass | butterfly | \n", + "butterfly | fish | \n", + "pencil | bicycle | \n", + "butterfly | camera | \n", + "camera | bicycle | \n", + "hourglass | pencil | \n", + "butterfly | hourglass | \n", + "fish | butterfly | " + ], + "text/plain": [ + "X | Y | \n", + ":- | :- | \n", + "bicycle | pencil | \n", + "camera | butterfly | \n", + "bicycle | camera | \n", + "pencil | hourglass | \n", + "hourglass | butterfly | \n", + "butterfly | fish | \n", + "pencil | bicycle | \n", + "butterfly | camera | \n", + "camera | bicycle | \n", + "hourglass | pencil | \n", + "butterfly | hourglass | \n", + "fish | butterfly | " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_table(next(X,Y))" + ] + }, + { + "cell_type": "markdown", + "id": "aacfbf9d", + "metadata": {}, + "source": [ + "## Recursion\n", + "\n", + "Recursion is also allowed in Prolog rules.\n", + "We now define the simple graph of Figure 2.4 of the Art of Prolog as Prolog facts.\n", + "\n", + "Note that Prolog allows the same predicate name to be used with multiple arities.\n", + "Above we have defined `edge/3`, below we define `edge/2`. For Prolog these two\n", + "predicates are different and there is no confusion within the Prolog system.\n", + "However, for programmers it can be a bit tricky to read code which uses\n", + "the same predicate name with multiple arities." + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "id": "12f78859", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:edge/2 were retracted (click to expand)</summary><pre>:- dynamic edge/2.\n", + "\n", + "edge(a, b).\n", + "edge(a, c).\n", + "edge(b, d).\n", + "edge(c, d).\n", + "edge(d, e).\n", + "edge(f, g).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:edge/2 were retracted:\n", + ":- dynamic edge/2.\n", + "\n", + "edge(a, b).\n", + "edge(a, c).\n", + "edge(b, d).\n", + "edge(c, d).\n", + "edge(d, e).\n", + "edge(f, g).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:edge/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "edge(a,b). edge(a,c).\n", + "edge(b,d). edge(c,d).\n", + "edge(d,e).\n", + "edge(f,g)." + ] + }, + { + "cell_type": "markdown", + "id": "16ffb236", + "metadata": {}, + "source": [ + "With the underscore we indicate that we are not interested in an argument; it is an anonymous logical variable. Here we use this to find the last element of a list:" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "id": "99bfae95", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n", + "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n", + " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n", + "<!-- Generated by graphviz version 6.0.1 (20220911.1526)\n", + " -->\n", + "<!-- Pages: 1 -->\n", + "<svg width=\"206pt\" height=\"260pt\"\n", + " viewBox=\"0.00 0.00 206.00 260.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n", + "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 256)\">\n", + "<polygon fill=\"white\" stroke=\"none\" points=\"-4,4 -4,-256 202,-256 202,4 -4,4\"/>\n", + "<!-- a -->\n", + "<g id=\"node1\" class=\"node\">\n", + "<title>a</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"63\" cy=\"-234\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"63\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">a</text>\n", + "</g>\n", + "<!-- b -->\n", + "<g id=\"node2\" class=\"node\">\n", + "<title>b</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"27\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"27\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">b</text>\n", + "</g>\n", + "<!-- a->b -->\n", + "<g id=\"edge1\" class=\"edge\">\n", + "<title>a->b</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M54.65,-216.76C50.29,-208.28 44.85,-197.71 39.96,-188.2\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"42.99,-186.44 35.3,-179.15 36.77,-189.64 42.99,-186.44\"/>\n", + "</g>\n", + "<!-- c -->\n", + "<g id=\"node3\" class=\"node\">\n", + "<title>c</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"99\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"99\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">c</text>\n", + "</g>\n", + "<!-- a->c -->\n", + "<g id=\"edge2\" class=\"edge\">\n", + "<title>a->c</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M71.35,-216.76C75.71,-208.28 81.15,-197.71 86.04,-188.2\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"89.23,-189.64 90.7,-179.15 83.01,-186.44 89.23,-189.64\"/>\n", + "</g>\n", + "<!-- d -->\n", + "<g id=\"node4\" class=\"node\">\n", + "<title>d</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"63\" cy=\"-90\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"63\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">d</text>\n", + "</g>\n", + "<!-- b->d -->\n", + "<g id=\"edge3\" class=\"edge\">\n", + "<title>b->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M35.35,-144.76C39.71,-136.28 45.15,-125.71 50.04,-116.2\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"53.23,-117.64 54.7,-107.15 47.01,-114.44 53.23,-117.64\"/>\n", + "</g>\n", + "<!-- c->d -->\n", + "<g id=\"edge4\" class=\"edge\">\n", + "<title>c->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M90.65,-144.76C86.29,-136.28 80.85,-125.71 75.96,-116.2\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"78.99,-114.44 71.3,-107.15 72.77,-117.64 78.99,-114.44\"/>\n", + "</g>\n", + "<!-- e -->\n", + "<g id=\"node5\" class=\"node\">\n", + "<title>e</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"63\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"63\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">e</text>\n", + "</g>\n", + "<!-- d->e -->\n", + "<g id=\"edge5\" class=\"edge\">\n", + "<title>d->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M63,-71.7C63,-63.98 63,-54.71 63,-46.11\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"66.5,-46.1 63,-36.1 59.5,-46.1 66.5,-46.1\"/>\n", + "</g>\n", + "<!-- f -->\n", + "<g id=\"node6\" class=\"node\">\n", + "<title>f</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"171\" cy=\"-234\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"171\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">f</text>\n", + "</g>\n", + "<!-- g -->\n", + "<g id=\"node7\" class=\"node\">\n", + "<title>g</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"171\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"171\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">g</text>\n", + "</g>\n", + "<!-- f->g -->\n", + "<g id=\"edge6\" class=\"edge\">\n", + "<title>f->g</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M171,-215.7C171,-207.98 171,-198.71 171,-190.11\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"174.5,-190.1 171,-180.1 167.5,-190.1 174.5,-190.1\"/>\n", + "</g>\n", + "</g>\n", + "</svg>\n" + ], + "text/plain": [ + "digraph {\n", + " \"a\" -> \"b\"\n", + " \"a\" -> \"c\"\n", + " \"b\" -> \"d\"\n", + " \"c\" -> \"d\"\n", + " \"d\" -> \"e\"\n", + " \"f\" -> \"g\"\n", + "}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_transition_graph(edge/2, 1, 2,0)." + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "id": "7a790ea4", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:conn/2 were retracted (click to expand)</summary><pre>:- dynamic conn/2.\n", + "\n", + "conn(A, A).\n", + "conn(A, B) :-\n", + " edge(A, C),\n", + " conn(C, B).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:conn/2 were retracted:\n", + ":- dynamic conn/2.\n", + "\n", + "conn(A, A).\n", + "conn(A, B) :-\n", + " edge(A, C),\n", + " conn(C, B).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:conn/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "conn(A,A) :- true.\n", + "%conn(X,Y) :- edge(X,Y).\n", + "conn(X,Y) :- edge(X,Z), conn(Z,Y)." + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "id": "440d2412", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/markdown": [ + "X | \n", + ":- | \n", + "a | \n", + "b | \n", + "d | \n", + "e | \n", + "c | \n", + "d | \n", + "e | " + ], + "text/plain": [ + "X | \n", + ":- | \n", + "a | \n", + "b | \n", + "d | \n", + "e | \n", + "c | \n", + "d | \n", + "e | " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- jupyter:print_table(conn(a,X))." + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "id": "f50f25de", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mLs = [a,b,d,e,c,d,e],\n", + "Len = 7" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- findall(X, conn(a,X),Ls), length(Ls,Len)." + ] + }, + { + "cell_type": "markdown", + "id": "466ece27", + "metadata": {}, + "source": [ + "Let us now try and define the transitive and reflexive closure of edge." + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "5627c07e", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:connected/2 were retracted (click to expand)</summary><pre>:- dynamic connected/2.\n", + "\n", + "connected(A, A).\n", + "connected(A, B) :-\n", + " edge(A, C),\n", + " connected(C, B).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:connected/2 were retracted:\n", + ":- dynamic connected/2.\n", + "\n", + "connected(A, A).\n", + "connected(A, B) :-\n", + " edge(A, C),\n", + " connected(C, B).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:connected/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "connected(N,N).\n", + "connected(N1,N2) :- edge(N1,Link), connected(Link,N2)." + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "id": "428e3101", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = a" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- connected(a,X)." + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "id": "ae00f8b8", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n", + "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n", + " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n", + "<!-- Generated by graphviz version 6.0.1 (20220911.1526)\n", + " -->\n", + "<!-- Pages: 1 -->\n", + "<svg width=\"340pt\" height=\"260pt\"\n", + " viewBox=\"0.00 0.00 340.05 260.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n", + "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 256)\">\n", + "<polygon fill=\"white\" stroke=\"none\" points=\"-4,4 -4,-256 336.05,-256 336.05,4 -4,4\"/>\n", + "<!-- _20642 -->\n", + "<g id=\"node1\" class=\"node\">\n", + "<title>_20642</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"37.05\" cy=\"-234\" rx=\"37.09\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"37.05\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">_20642</text>\n", + "</g>\n", + "<!-- _20642->_20642 -->\n", + "<g id=\"edge1\" class=\"edge\">\n", + "<title>_20642->_20642</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M63.38,-246.81C78.29,-249.31 92.09,-245.04 92.09,-234 92.09,-225.55 84,-221.06 73.52,-220.55\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"73.14,-217.07 63.38,-221.19 73.58,-224.05 73.14,-217.07\"/>\n", + "</g>\n", + "<!-- a -->\n", + "<g id=\"node2\" class=\"node\">\n", + "<title>a</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"137.05\" cy=\"-234\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"137.05\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">a</text>\n", + "</g>\n", + "<!-- b -->\n", + "<g id=\"node3\" class=\"node\">\n", + "<title>b</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"105.05\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"105.05\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">b</text>\n", + "</g>\n", + "<!-- a->b -->\n", + "<g id=\"edge2\" class=\"edge\">\n", + "<title>a->b</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M129.46,-216.41C125.68,-208.13 121.01,-197.92 116.78,-188.66\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"119.92,-187.11 112.58,-179.47 113.55,-190.02 119.92,-187.11\"/>\n", + "</g>\n", + "<!-- d -->\n", + "<g id=\"node4\" class=\"node\">\n", + "<title>d</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"169.05\" cy=\"-90\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"169.05\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">d</text>\n", + "</g>\n", + "<!-- a->d -->\n", + "<g id=\"edge3\" class=\"edge\">\n", + "<title>a->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M136.32,-215.87C139.26,-191.3 149.24,-145.85 157.8,-117.08\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"161.21,-117.9 160.87,-107.31 154.54,-115.8 161.21,-117.9\"/>\n", + "</g>\n", + "<!-- a->d -->\n", + "<g id=\"edge6\" class=\"edge\">\n", + "<title>a->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M145.21,-216.71C153.26,-192.7 163.77,-147.53 168.34,-118.37\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"171.81,-118.82 169.74,-108.43 164.88,-117.84 171.81,-118.82\"/>\n", + "</g>\n", + "<!-- e -->\n", + "<g id=\"node5\" class=\"node\">\n", + "<title>e</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"105.05\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"105.05\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">e</text>\n", + "</g>\n", + "<!-- a->e -->\n", + "<g id=\"edge4\" class=\"edge\">\n", + "<title>a->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M113.16,-225.31C94.49,-216.84 70.56,-201.52 60.05,-180 37.64,-134.13 63.89,-74.08 84.94,-41.84\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"87.88,-43.74 90.69,-33.52 82.12,-39.75 87.88,-43.74\"/>\n", + "</g>\n", + "<!-- a->e -->\n", + "<g id=\"edge7\" class=\"edge\">\n", + "<title>a->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M118.83,-220.44C104.8,-211.49 86.78,-197.89 78.05,-180 56.4,-135.69 80.16,-78.15 95.3,-45.22\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"98.62,-46.38 99.66,-35.84 92.27,-43.43 98.62,-46.38\"/>\n", + "</g>\n", + "<!-- c -->\n", + "<g id=\"node6\" class=\"node\">\n", + "<title>c</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"233.05\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"233.05\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">c</text>\n", + "</g>\n", + "<!-- a->c -->\n", + "<g id=\"edge5\" class=\"edge\">\n", + "<title>a->c</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M154.65,-220.16C169.4,-209.41 190.66,-193.91 207.32,-181.76\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"209.53,-184.48 215.55,-175.76 205.41,-178.82 209.53,-184.48\"/>\n", + "</g>\n", + "<!-- b->d -->\n", + "<g id=\"edge8\" class=\"edge\">\n", + "<title>b->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M118.62,-146.15C127.36,-136.6 138.88,-123.99 148.7,-113.25\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"151.33,-115.57 155.49,-105.82 146.16,-110.84 151.33,-115.57\"/>\n", + "</g>\n", + "<!-- b->e -->\n", + "<g id=\"edge9\" class=\"edge\">\n", + "<title>b->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M105.05,-143.87C105.05,-119.67 105.05,-75.21 105.05,-46.39\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"108.55,-46.19 105.05,-36.19 101.55,-46.19 108.55,-46.19\"/>\n", + "</g>\n", + "<!-- d->e -->\n", + "<g id=\"edge12\" class=\"edge\">\n", + "<title>d->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M155.47,-74.15C146.73,-64.6 135.21,-51.99 125.39,-41.25\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"127.93,-38.84 118.6,-33.82 122.76,-43.57 127.93,-38.84\"/>\n", + "</g>\n", + "<!-- c->d -->\n", + "<g id=\"edge10\" class=\"edge\">\n", + "<title>c->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M219.47,-146.15C210.73,-136.6 199.21,-123.99 189.39,-113.25\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"191.93,-110.84 182.6,-105.82 186.76,-115.57 191.93,-110.84\"/>\n", + "</g>\n", + "<!-- c->e -->\n", + "<g id=\"edge11\" class=\"edge\">\n", + "<title>c->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M231.52,-143.75C228.99,-124.33 222.35,-92.79 205.05,-72 187.93,-51.44 160.74,-37.76 139.03,-29.45\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"140.09,-26.11 129.49,-26.01 137.71,-32.7 140.09,-26.11\"/>\n", + "</g>\n", + "<!-- f -->\n", + "<g id=\"node7\" class=\"node\">\n", + "<title>f</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"305.05\" cy=\"-234\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"305.05\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">f</text>\n", + "</g>\n", + "<!-- g -->\n", + "<g id=\"node8\" class=\"node\">\n", + "<title>g</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"305.05\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"305.05\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">g</text>\n", + "</g>\n", + "<!-- f->g -->\n", + "<g id=\"edge13\" class=\"edge\">\n", + "<title>f->g</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M305.05,-215.7C305.05,-207.98 305.05,-198.71 305.05,-190.11\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"308.55,-190.1 305.05,-180.1 301.55,-190.1 308.55,-190.1\"/>\n", + "</g>\n", + "</g>\n", + "</svg>\n" + ], + "text/plain": [ + "digraph {\n", + " \"_20642\" -> \"_20642\"\n", + " \"a\" -> \"b\"\n", + " \"a\" -> \"d\"\n", + " \"a\" -> \"e\"\n", + " \"a\" -> \"c\"\n", + " \"a\" -> \"d\"\n", + " \"a\" -> \"e\"\n", + " \"b\" -> \"d\"\n", + " \"b\" -> \"e\"\n", + " \"c\" -> \"d\"\n", + " \"c\" -> \"e\"\n", + " \"d\" -> \"e\"\n", + " \"f\" -> \"g\"\n", + "}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_transition_graph(connected/2, 1, 2,0)." + ] + }, + { + "cell_type": "markdown", + "id": "fa7eb5e5", + "metadata": {}, + "source": [ + "How should we adapt the definition to only provide the transitive (non-reflexive) closure?" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "id": "4ac0a146", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:conn1/2 were retracted (click to expand)</summary><pre>:- dynamic conn1/2.\n", + "\n", + "conn1(A, B) :-\n", + " edge(A, B).\n", + "conn1(A, B) :-\n", + " edge(A, C),\n", + " conn1(C, B).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:conn1/2 were retracted:\n", + ":- dynamic conn1/2.\n", + "\n", + "conn1(A, B) :-\n", + " edge(A, B).\n", + "conn1(A, B) :-\n", + " edge(A, C),\n", + " conn1(C, B).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:conn1/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "conn1(X,Y) :- edge(X,Y).\n", + "conn1(N1,N2) :- edge(N1,Link), conn1(Link,N2)." + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "id": "713979ea", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = b" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- conn1(a,X)." + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "id": "edfb9af1", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n", + "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n", + " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n", + "<!-- Generated by graphviz version 6.0.1 (20220911.1526)\n", + " -->\n", + "<!-- Pages: 1 -->\n", + "<svg width=\"318pt\" height=\"260pt\"\n", + " viewBox=\"0.00 0.00 318.00 260.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n", + "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 256)\">\n", + "<polygon fill=\"white\" stroke=\"none\" points=\"-4,4 -4,-256 314,-256 314,4 -4,4\"/>\n", + "<!-- a -->\n", + "<g id=\"node1\" class=\"node\">\n", + "<title>a</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"123\" cy=\"-234\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"123\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">a</text>\n", + "</g>\n", + "<!-- b -->\n", + "<g id=\"node2\" class=\"node\">\n", + "<title>b</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"27\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"27\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">b</text>\n", + "</g>\n", + "<!-- a->b -->\n", + "<g id=\"edge1\" class=\"edge\">\n", + "<title>a->b</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M105.39,-220.16C90.64,-209.41 69.39,-193.91 52.73,-181.76\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"54.64,-178.82 44.5,-175.76 50.51,-184.48 54.64,-178.82\"/>\n", + "</g>\n", + "<!-- c -->\n", + "<g id=\"node3\" class=\"node\">\n", + "<title>c</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"155\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"155\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">c</text>\n", + "</g>\n", + "<!-- a->c -->\n", + "<g id=\"edge2\" class=\"edge\">\n", + "<title>a->c</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M130.58,-216.41C134.37,-208.13 139.03,-197.92 143.27,-188.66\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"146.5,-190.02 147.47,-179.47 140.13,-187.11 146.5,-190.02\"/>\n", + "</g>\n", + "<!-- d -->\n", + "<g id=\"node4\" class=\"node\">\n", + "<title>d</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"91\" cy=\"-90\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"91\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">d</text>\n", + "</g>\n", + "<!-- a->d -->\n", + "<g id=\"edge7\" class=\"edge\">\n", + "<title>a->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M114.84,-216.71C106.78,-192.7 96.28,-147.53 91.71,-118.37\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"95.17,-117.84 90.31,-108.43 88.24,-118.82 95.17,-117.84\"/>\n", + "</g>\n", + "<!-- a->d -->\n", + "<g id=\"edge9\" class=\"edge\">\n", + "<title>a->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M123.72,-215.87C120.78,-191.3 110.8,-145.85 102.25,-117.08\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"105.51,-115.8 99.17,-107.31 98.83,-117.9 105.51,-115.8\"/>\n", + "</g>\n", + "<!-- e -->\n", + "<g id=\"node5\" class=\"node\">\n", + "<title>e</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"155\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"155\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">e</text>\n", + "</g>\n", + "<!-- a->e -->\n", + "<g id=\"edge8\" class=\"edge\">\n", + "<title>a->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M141.22,-220.44C155.25,-211.49 173.26,-197.89 182,-180 203.65,-135.69 179.89,-78.15 164.75,-45.22\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"167.77,-43.43 160.39,-35.84 161.43,-46.38 167.77,-43.43\"/>\n", + "</g>\n", + "<!-- a->e -->\n", + "<g id=\"edge10\" class=\"edge\">\n", + "<title>a->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M146.88,-225.31C165.55,-216.84 189.49,-201.52 200,-180 222.41,-134.13 196.16,-74.08 175.11,-41.84\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"177.92,-39.75 169.36,-33.52 172.16,-43.74 177.92,-39.75\"/>\n", + "</g>\n", + "<!-- b->d -->\n", + "<g id=\"edge3\" class=\"edge\">\n", + "<title>b->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M40.57,-146.15C49.31,-136.6 60.83,-123.99 70.66,-113.25\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"73.28,-115.57 77.45,-105.82 68.12,-110.84 73.28,-115.57\"/>\n", + "</g>\n", + "<!-- b->e -->\n", + "<g id=\"edge11\" class=\"edge\">\n", + "<title>b->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M28.53,-143.75C31.05,-124.33 37.7,-92.79 55,-72 72.11,-51.44 99.31,-37.76 121.02,-29.45\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"122.34,-32.7 130.56,-26.01 119.96,-26.11 122.34,-32.7\"/>\n", + "</g>\n", + "<!-- c->d -->\n", + "<g id=\"edge4\" class=\"edge\">\n", + "<title>c->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M141.43,-146.15C132.69,-136.6 121.17,-123.99 111.34,-113.25\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"113.88,-110.84 104.55,-105.82 108.72,-115.57 113.88,-110.84\"/>\n", + "</g>\n", + "<!-- c->e -->\n", + "<g id=\"edge12\" class=\"edge\">\n", + "<title>c->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M155,-143.87C155,-119.67 155,-75.21 155,-46.39\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"158.5,-46.19 155,-36.19 151.5,-46.19 158.5,-46.19\"/>\n", + "</g>\n", + "<!-- d->e -->\n", + "<g id=\"edge5\" class=\"edge\">\n", + "<title>d->e</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M104.57,-74.15C113.31,-64.6 124.83,-51.99 134.66,-41.25\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"137.28,-43.57 141.45,-33.82 132.12,-38.84 137.28,-43.57\"/>\n", + "</g>\n", + "<!-- f -->\n", + "<g id=\"node6\" class=\"node\">\n", + "<title>f</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"283\" cy=\"-234\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"283\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">f</text>\n", + "</g>\n", + "<!-- g -->\n", + "<g id=\"node7\" class=\"node\">\n", + "<title>g</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"283\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"283\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">g</text>\n", + "</g>\n", + "<!-- f->g -->\n", + "<g id=\"edge6\" class=\"edge\">\n", + "<title>f->g</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M283,-215.7C283,-207.98 283,-198.71 283,-190.11\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"286.5,-190.1 283,-180.1 279.5,-190.1 286.5,-190.1\"/>\n", + "</g>\n", + "</g>\n", + "</svg>\n" + ], + "text/plain": [ + "digraph {\n", + " \"a\" -> \"b\"\n", + " \"a\" -> \"c\"\n", + " \"b\" -> \"d\"\n", + " \"c\" -> \"d\"\n", + " \"d\" -> \"e\"\n", + " \"f\" -> \"g\"\n", + " \"a\" -> \"d\"\n", + " \"a\" -> \"e\"\n", + " \"a\" -> \"d\"\n", + " \"a\" -> \"e\"\n", + " \"b\" -> \"e\"\n", + " \"c\" -> \"e\"\n", + "}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_transition_graph(conn1/2, 1, 2,0)." + ] + }, + { + "cell_type": "markdown", + "id": "7b4487b6", + "metadata": {}, + "source": [ + "## Arithmetic\n", + "Prolog provides integers and floating point numbers as primitive data structures.\n", + "With the `is` predicate we can for example compute with those numbers:" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "id": "04ea12a1", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = 1606938044258990275541962092341162602522202993782792835301376" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- X is 2^200." + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "id": "6056f98a", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = 2.0" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- X is 1.0+1." + ] + }, + { + "cell_type": "markdown", + "id": "53b594a2", + "metadata": {}, + "source": [ + "# Compound data values\n", + "\n", + "So far we have seen these primitive Prolog data values:\n", + "- constants (called atoms in Prolog) like `a` and `b`\n", + "- integers\n", + "- floats\n", + "\n", + "More complex data values can be wrapped in so-called functors (also called function symbols).\n", + "Like predicates they have an arity and take terms as arguments.\n", + "Unlike predicates, they denote a value and not a logical truth value.\n", + "\n", + "This can be confusing to beginners: whether something is a predicate or functor depends on the position in the Prolog file:\n", + "- top-level symbols in Prolog clauses are predicates\n", + "- arguments to predicates and functors only contain functors\n", + "\n", + "Functors have many uses in Prolog. The can be used for simple records up to recursive data structures like lists or trees.\n", + "\n", + "Below we first use the functor `employe/2` as a simple record." + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "id": "d4664fd8", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:construct/3 were retracted (click to expand)</summary><pre>:- dynamic construct/3.\n", + "\n", + "construct(A, B, employe(A, B)).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:construct/3 were retracted:\n", + ":- dynamic construct/3.\n", + "\n", + "construct(A, B, employe(A, B)).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:construct/3\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:get_name/2 were retracted (click to expand)</summary><pre>:- dynamic get_name/2.\n", + "\n", + "get_name(employe(A, _), A).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:get_name/2 were retracted:\n", + ":- dynamic get_name/2.\n", + "\n", + "get_name(employe(A, _), A).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:get_name/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:get_dept/2 were retracted (click to expand)</summary><pre>:- dynamic get_dept/2.\n", + "\n", + "get_dept(employe(_, A), A).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:get_dept/2 were retracted:\n", + ":- dynamic get_dept/2.\n", + "\n", + "get_dept(employe(_, A), A).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:get_dept/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "\n", + "construct(Name,Department,employe(Name,Department)).\n", + "\n", + "get_name(employe(Name,_),Name).\n", + "get_dept(employe(_,Dept),Dept)." + ] + }, + { + "cell_type": "code", + "execution_count": 87, + "id": "08715fa2", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mE1 = employe(a,cs),\n", + "E2 = employe(b,cs),\n", + "N1 = a,\n", + "D2 = cs" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- construct(a,cs,E1), construct(b,cs,E2), get_name(E1,N1), get_dept(E2,D2)." + ] + }, + { + "cell_type": "markdown", + "id": "e2ed5de7", + "metadata": {}, + "source": [ + "The arguments to a functor can in term also make use of a functor.\n", + "\n", + "One could thus for example represent a list in Prolog by using\n", + "a functor `cons/2` to denote a non-empty list and `nil/0` to denote\n", + "an empty list.\n", + "Note that a functor of arity 0 is simply a constant (aka atom in Prolog).\n", + "So a list of length two with a and b as elements is represented as follows:" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "id": "313194bb", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mMylist = cons(a,cons(b,nil))" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- Mylist = cons(a,cons(b,nil))." + ] + }, + { + "cell_type": "markdown", + "id": "f2b1a0cd", + "metadata": {}, + "source": [ + "Let us now try and define some useful predicates for our data type:\n", + "- is_empty/1 to check if something is the empty list\n", + "- is_list/1 to check if something is a list\n", + "- head/1 to get the first element of a list\n", + "- element_of/2 to check if something is an element of a list\n", + "- last/1 to get the last elemetn of a list" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "id": "e0eed7cc", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " <style>\n", + " details {\n", + " font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace; font-size: 13px;\n", + " }\n", + "\n", + " details > summary {\n", + " cursor: pointer;\n", + " }\n", + " </style>\n", + " <details><summary>Previously defined clauses of user:is_empty/1 were retracted (click to expand)</summary><pre>:- dynamic is_empty/1.\n", + "\n", + "is_empty(nil).\n", + "</pre></details>" + ], + "text/plain": [ + "Previously defined clauses of user:is_empty/1 were retracted:\n", + ":- dynamic is_empty/1.\n", + "\n", + "is_empty(nil).\n" + ] + }, + "metadata": { + "application/json": {} + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:is_empty/1\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "is_empty(nil) :- true." + ] + }, + { + "cell_type": "markdown", + "id": "6efab831", + "metadata": {}, + "source": [ + "This should succeed:" + ] + }, + { + "cell_type": "code", + "execution_count": 90, + "id": "82f68320", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- is_empty(nil)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6c2de157", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1;31mfalse" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- is_empty(cons(a,nil))." + ] + }, + { + "cell_type": "markdown", + "id": "d0e8eb01", + "metadata": {}, + "source": [ + "Let us now define is_list0 (is_list is predefined):" + ] + }, + { + "cell_type": "code", + "execution_count": 92, + "id": "c2615402", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "% Asserting clauses for user:is_list0/1\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:is_non_empty_list/1\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "is_list0(nil).\n", + "is_list0(cons(_,B)) :- is_list0(B).\n", + "\n", + "is_non_empty_list(cons(_,B)) :- is_list0(B)." + ] + }, + { + "cell_type": "code", + "execution_count": 93, + "id": "d2b8accc", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?-is_list0(cons(employe(a,cs),cons(b,nil)))." + ] + }, + { + "cell_type": "code", + "execution_count": 94, + "id": "9cf37f7f", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "% Asserting clauses for user:head/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "head(First,cons(First,_)) :- true." + ] + }, + { + "cell_type": "code", + "execution_count": 95, + "id": "05f68119", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = employe(a,b)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- head(X,cons(employe(a,b),cons(b,nil)))." + ] + }, + { + "cell_type": "code", + "execution_count": 96, + "id": "bef84acb", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "% Asserting clauses for user:element_of/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "element_of(First,cons(First,_)).\n", + "element_of(H,cons(_,T)) :- element_of(H,T)." + ] + }, + { + "cell_type": "code", + "execution_count": 97, + "id": "b1707b0f", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mY = cons(c,_18628)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- element_of(c,cons(a,cons(b,Y)))." + ] + }, + { + "cell_type": "code", + "execution_count": 98, + "id": "0cdcb148", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "% Retrying goal: element_of(c,cons(a,cons(b,Y)))\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mY = cons(_18626,cons(c,_18634))" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:retry." + ] + }, + { + "cell_type": "code", + "execution_count": 99, + "id": "4365798d", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mFirst = a" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- element_of(First,cons(a,nil))" + ] + }, + { + "cell_type": "code", + "execution_count": 100, + "id": "097687f9", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/markdown": [ + "X | \n", + ":- | \n", + "a | \n", + "b | " + ], + "text/plain": [ + "X | \n", + ":- | \n", + "a | \n", + "b | " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_table(element_of(X,cons(a,cons(b,nil))))" + ] + }, + { + "cell_type": "code", + "execution_count": 101, + "id": "e3c67e2b", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "% Asserting clauses for user:last0/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "last0(X,cons(X,nil)).\n", + "last0(X,cons(_,Y)) :- last0(X,Y)." + ] + }, + { + "cell_type": "code", + "execution_count": 102, + "id": "1c91221d", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mX = b" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- last0(X,cons(a,cons(b,nil)))." + ] + }, + { + "cell_type": "markdown", + "id": "5f251e4d", + "metadata": {}, + "source": [ + "## Trees\n", + "\n", + "As a quick example let us represent binary trees using compound Prolog terms.\n", + "For this we use a ternary functor `tree/3`.\n", + "It has three arguments:\n", + "- the left sub-tree\n", + "- the information at the root of the tree\n", + "- the right sub-tree\n", + "We also need the empty tree, which we represent by `nil`." + ] + }, + { + "cell_type": "code", + "execution_count": 103, + "id": "0dcf1d4c", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mMytree = tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- Mytree = tree( tree(nil,a,nil), b, tree(nil,c,tree(nil,d,nil)))." + ] + }, + { + "cell_type": "code", + "execution_count": 104, + "id": "52fb0c11", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "% Asserting clauses for user:revtree/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "revtree(nil,nil).\n", + "revtree(tree(L,Info,R),tree(RR,Info,RL)) :- revtree(L,RL), revtree(R,RR)." + ] + }, + { + "cell_type": "code", + "execution_count": 105, + "id": "c3a7cd35", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mMytree = tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil))),\n", + "Result = tree(tree(tree(nil,d,nil),c,nil),b,tree(nil,a,nil))" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- Mytree = tree( tree(nil,a,nil), b, tree(nil,c,tree(nil,d,nil))),\n", + " revtree(Mytree,Result)." + ] + }, + { + "cell_type": "markdown", + "id": "d883817f", + "metadata": {}, + "source": [ + "## Optional Appendix: Visualising data values as trees\n", + "\n", + "Below we try to use the Jupyter graph visualisation to represent data values\n", + "in a tree-like fashion." + ] + }, + { + "cell_type": "code", + "execution_count": 106, + "id": "ffe1cbc6", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [], + "source": [ + ":- use_module(library(lists))." + ] + }, + { + "cell_type": "markdown", + "id": "05730fc3", + "metadata": {}, + "source": [ + "We define a subtree relation, using the =.. built-in predicate, which deconstructs a term\n", + "by generating a list consisting of the function symbol and all its arguments:" + ] + }, + { + "cell_type": "code", + "execution_count": 107, + "id": "39fc2aab", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mList = [tree,nil,a,nil]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- tree(nil,a,nil) =.. List." + ] + }, + { + "cell_type": "markdown", + "id": "4088fdfa", + "metadata": {}, + "source": [ + "We can now define a subtree relation:" + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "id": "536475da", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1;31m% The Prolog server was restarted" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:subtree/3\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "subtree(Term,Nr,SubTerm) :- Term =.. [_|List], nth1(Nr,List,SubTerm)." + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "id": "eb820f56", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mMytree = tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil))),\n", + "Nr = 1,\n", + "SubTerm = tree(nil,a,nil)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- Mytree = tree( tree(nil,a,nil), b, tree(nil,c,tree(nil,d,nil))),\n", + " subtree(Mytree,Nr,SubTerm)." + ] + }, + { + "cell_type": "markdown", + "id": "69ae338f", + "metadata": {}, + "source": [ + "For the Jupyter graph visualisation we also need to restrict this relation and define a set of terms of interest.\n", + "Indeed, otherwise there are infinitely many terms.\n", + "\n", + "For this we define the transitive and reflexive closure of the subtree relation and only consider subtrees of a given starting term (here `tree( tree(nil,a,nil), b, tree(nil,c,tree(nil,d,nil)))`)." + ] + }, + { + "cell_type": "code", + "execution_count": 118, + "id": "4b4732c1", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "% Asserting clauses for user:rec_subtree/2\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:of_interest/1\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "% Asserting clauses for user:subt/3\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "rec_subtree(Term,Sub) :- Term = Sub.\n", + "rec_subtree(Term,Sub) :- subtree(Term,_,X), rec_subtree(X,Sub).\n", + "\n", + "of_interest(Term) :- rec_subtree(tree( tree(nil,a,nil), b, tree(nil,c,tree(nil,d,nil))),Term).\n", + "\n", + "subt(Term,Nr,SubTerm) :-\n", + " of_interest(Term), % only consider subterms of the above term as nodes\n", + " subtree(Term,Nr,SubTerm)." + ] + }, + { + "cell_type": "code", + "execution_count": 119, + "id": "2992249a", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[1mMytree = tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil))),\n", + "Nr = 1,\n", + "SubTerm = tree(nil,a,nil)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "?- Mytree = tree( tree(nil,a,nil), b, tree(nil,c,tree(nil,d,nil))),\n", + " subtree(Mytree,Nr,SubTerm)." + ] + }, + { + "cell_type": "code", + "execution_count": 120, + "id": "2b76644b", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n", + "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n", + " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n", + "<!-- Generated by graphviz version 6.0.1 (20220911.1526)\n", + " -->\n", + "<!-- Pages: 1 -->\n", + "<svg width=\"459pt\" height=\"305pt\"\n", + " viewBox=\"0.00 0.00 458.83 305.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n", + "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 301)\">\n", + "<polygon fill=\"white\" stroke=\"none\" points=\"-4,4 -4,-301 454.83,-301 454.83,4 -4,4\"/>\n", + "<!-- tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil))) -->\n", + "<g id=\"node1\" class=\"node\">\n", + "<title>tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"168.99\" cy=\"-279\" rx=\"168.97\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"168.99\" y=\"-275.3\" font-family=\"Times,serif\" font-size=\"14.00\">tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))</text>\n", + "</g>\n", + "<!-- tree(nil,a,nil) -->\n", + "<g id=\"node2\" class=\"node\">\n", + "<title>tree(nil,a,nil)</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"144.99\" cy=\"-105\" rx=\"57.39\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"144.99\" y=\"-101.3\" font-family=\"Times,serif\" font-size=\"14.00\">tree(nil,a,nil)</text>\n", + "</g>\n", + "<!-- tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))->tree(nil,a,nil) -->\n", + "<g id=\"edge1\" class=\"edge\">\n", + "<title>tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))->tree(nil,a,nil)</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M154.28,-260.89C144.13,-247.89 131.5,-229.05 125.99,-210 118.49,-184.13 125.83,-153.74 133.46,-132.52\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"136.73,-133.77 137.05,-123.18 130.2,-131.26 136.73,-133.77\"/>\n", + "<text text-anchor=\"middle\" x=\"129.49\" y=\"-188.3\" font-family=\"Times,serif\" font-size=\"14.00\">1</text>\n", + "</g>\n", + "<!-- b -->\n", + "<g id=\"node3\" class=\"node\">\n", + "<title>b</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"168.99\" cy=\"-192\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"168.99\" y=\"-188.3\" font-family=\"Times,serif\" font-size=\"14.00\">b</text>\n", + "</g>\n", + "<!-- tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))->b -->\n", + "<g id=\"edge2\" class=\"edge\">\n", + "<title>tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))->b</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M168.99,-260.8C168.99,-249.16 168.99,-233.55 168.99,-220.24\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"172.49,-220.18 168.99,-210.18 165.49,-220.18 172.49,-220.18\"/>\n", + "<text text-anchor=\"middle\" x=\"172.49\" y=\"-231.8\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n", + "</g>\n", + "<!-- tree(nil,c,tree(nil,d,nil)) -->\n", + "<g id=\"node4\" class=\"node\">\n", + "<title>tree(nil,c,tree(nil,d,nil))</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"308.99\" cy=\"-192\" rx=\"94.78\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"308.99\" y=\"-188.3\" font-family=\"Times,serif\" font-size=\"14.00\">tree(nil,c,tree(nil,d,nil))</text>\n", + "</g>\n", + "<!-- tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))->tree(nil,c,tree(nil,d,nil)) -->\n", + "<g id=\"edge3\" class=\"edge\">\n", + "<title>tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))->tree(nil,c,tree(nil,d,nil))</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M196.64,-261.21C218.55,-247.91 249.31,-229.23 273.11,-214.78\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"275.13,-217.65 281.86,-209.47 271.5,-211.67 275.13,-217.65\"/>\n", + "<text text-anchor=\"middle\" x=\"250.49\" y=\"-231.8\" font-family=\"Times,serif\" font-size=\"14.00\">3</text>\n", + "</g>\n", + "<!-- nil -->\n", + "<g id=\"node5\" class=\"node\">\n", + "<title>nil</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"237.99\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"237.99\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">nil</text>\n", + "</g>\n", + "<!-- tree(nil,a,nil)->nil -->\n", + "<g id=\"edge4\" class=\"edge\">\n", + "<title>tree(nil,a,nil)->nil</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M156.03,-87.08C163.24,-76.8 173.27,-63.82 183.99,-54 191.5,-47.11 200.53,-40.68 209.03,-35.27\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"210.91,-38.22 217.61,-30.01 207.25,-32.25 210.91,-38.22\"/>\n", + "<text text-anchor=\"middle\" x=\"187.49\" y=\"-57.8\" font-family=\"Times,serif\" font-size=\"14.00\">1</text>\n", + "</g>\n", + "<!-- tree(nil,a,nil)->nil -->\n", + "<g id=\"edge6\" class=\"edge\">\n", + "<title>tree(nil,a,nil)->nil</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M167.11,-88.33C174.88,-82.53 183.53,-75.72 190.99,-69 200.43,-60.49 210.17,-50.38 218.32,-41.49\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"220.92,-43.83 225.02,-34.06 215.72,-39.14 220.92,-43.83\"/>\n", + "<text text-anchor=\"middle\" x=\"208.49\" y=\"-57.8\" font-family=\"Times,serif\" font-size=\"14.00\">3</text>\n", + "</g>\n", + "<!-- a -->\n", + "<g id=\"node6\" class=\"node\">\n", + "<title>a</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"144.99\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"144.99\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">a</text>\n", + "</g>\n", + "<!-- tree(nil,a,nil)->a -->\n", + "<g id=\"edge5\" class=\"edge\">\n", + "<title>tree(nil,a,nil)->a</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M144.99,-86.8C144.99,-75.16 144.99,-59.55 144.99,-46.24\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"148.49,-46.18 144.99,-36.18 141.49,-46.18 148.49,-46.18\"/>\n", + "<text text-anchor=\"middle\" x=\"148.49\" y=\"-57.8\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n", + "</g>\n", + "<!-- tree(nil,c,tree(nil,d,nil))->nil -->\n", + "<g id=\"edge7\" class=\"edge\">\n", + "<title>tree(nil,c,tree(nil,d,nil))->nil</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M287.86,-174.39C273.66,-161.9 255.96,-143.49 246.99,-123 236.29,-98.57 234.91,-67.87 235.68,-46.17\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"239.18,-46.19 236.22,-36.02 232.19,-45.82 239.18,-46.19\"/>\n", + "<text text-anchor=\"middle\" x=\"250.49\" y=\"-101.3\" font-family=\"Times,serif\" font-size=\"14.00\">1</text>\n", + "</g>\n", + "<!-- c -->\n", + "<g id=\"node7\" class=\"node\">\n", + "<title>c</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"289.99\" cy=\"-105\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"289.99\" y=\"-101.3\" font-family=\"Times,serif\" font-size=\"14.00\">c</text>\n", + "</g>\n", + "<!-- tree(nil,c,tree(nil,d,nil))->c -->\n", + "<g id=\"edge8\" class=\"edge\">\n", + "<title>tree(nil,c,tree(nil,d,nil))->c</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M303.76,-174C302.11,-168.31 300.36,-161.91 298.99,-156 297.28,-148.64 295.7,-140.61 294.37,-133.18\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"297.8,-132.47 292.65,-123.21 290.9,-133.66 297.8,-132.47\"/>\n", + "<text text-anchor=\"middle\" x=\"302.49\" y=\"-144.8\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n", + "</g>\n", + "<!-- tree(nil,d,nil) -->\n", + "<g id=\"node8\" class=\"node\">\n", + "<title>tree(nil,d,nil)</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"392.99\" cy=\"-105\" rx=\"57.69\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"392.99\" y=\"-101.3\" font-family=\"Times,serif\" font-size=\"14.00\">tree(nil,d,nil)</text>\n", + "</g>\n", + "<!-- tree(nil,c,tree(nil,d,nil))->tree(nil,d,nil) -->\n", + "<g id=\"edge9\" class=\"edge\">\n", + "<title>tree(nil,c,tree(nil,d,nil))->tree(nil,d,nil)</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M325.58,-174.21C338.09,-161.55 355.41,-144.03 369.36,-129.91\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"372.17,-132.04 376.71,-122.47 367.19,-127.12 372.17,-132.04\"/>\n", + "<text text-anchor=\"middle\" x=\"359.49\" y=\"-144.8\" font-family=\"Times,serif\" font-size=\"14.00\">3</text>\n", + "</g>\n", + "<!-- tree(nil,d,nil)->nil -->\n", + "<g id=\"edge10\" class=\"edge\">\n", + "<title>tree(nil,d,nil)->nil</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M361.27,-89.94C348.03,-83.83 332.6,-76.39 318.99,-69 300.65,-59.05 280.71,-46.75 265.19,-36.85\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"266.92,-33.8 256.62,-31.32 263.13,-39.68 266.92,-33.8\"/>\n", + "<text text-anchor=\"middle\" x=\"322.49\" y=\"-57.8\" font-family=\"Times,serif\" font-size=\"14.00\">1</text>\n", + "</g>\n", + "<!-- tree(nil,d,nil)->nil -->\n", + "<g id=\"edge12\" class=\"edge\">\n", + "<title>tree(nil,d,nil)->nil</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M374.26,-87.92C361.31,-77.34 343.34,-63.7 325.99,-54 308.71,-44.34 288.22,-36.03 271.37,-29.93\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"272.51,-26.62 261.91,-26.6 270.18,-33.22 272.51,-26.62\"/>\n", + "<text text-anchor=\"middle\" x=\"352.49\" y=\"-57.8\" font-family=\"Times,serif\" font-size=\"14.00\">3</text>\n", + "</g>\n", + "<!-- d -->\n", + "<g id=\"node9\" class=\"node\">\n", + "<title>d</title>\n", + "<ellipse fill=\"none\" stroke=\"black\" cx=\"392.99\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n", + "<text text-anchor=\"middle\" x=\"392.99\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">d</text>\n", + "</g>\n", + "<!-- tree(nil,d,nil)->d -->\n", + "<g id=\"edge11\" class=\"edge\">\n", + "<title>tree(nil,d,nil)->d</title>\n", + "<path fill=\"none\" stroke=\"black\" d=\"M392.99,-86.8C392.99,-75.16 392.99,-59.55 392.99,-46.24\"/>\n", + "<polygon fill=\"black\" stroke=\"black\" points=\"396.49,-46.18 392.99,-36.18 389.49,-46.18 396.49,-46.18\"/>\n", + "<text text-anchor=\"middle\" x=\"396.49\" y=\"-57.8\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n", + "</g>\n", + "</g>\n", + "</svg>\n" + ], + "text/plain": [ + "digraph {\n", + " \"tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))\" -> \"tree(nil,a,nil)\" [label=\"1\"]\n", + " \"tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))\" -> \"b\" [label=\"2\"]\n", + " \"tree(tree(nil,a,nil),b,tree(nil,c,tree(nil,d,nil)))\" -> \"tree(nil,c,tree(nil,d,nil))\" [label=\"3\"]\n", + " \"tree(nil,a,nil)\" -> \"nil\" [label=\"1\"]\n", + " \"tree(nil,a,nil)\" -> \"a\" [label=\"2\"]\n", + " \"tree(nil,a,nil)\" -> \"nil\" [label=\"3\"]\n", + " \"tree(nil,c,tree(nil,d,nil))\" -> \"nil\" [label=\"1\"]\n", + " \"tree(nil,c,tree(nil,d,nil))\" -> \"c\" [label=\"2\"]\n", + " \"tree(nil,c,tree(nil,d,nil))\" -> \"tree(nil,d,nil)\" [label=\"3\"]\n", + " \"tree(nil,d,nil)\" -> \"nil\" [label=\"1\"]\n", + " \"tree(nil,d,nil)\" -> \"d\" [label=\"2\"]\n", + " \"tree(nil,d,nil)\" -> \"nil\" [label=\"3\"]\n", + "}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "\u001b[1mtrue" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "jupyter:print_transition_graph(subt/3, 1, 3,2)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f65812f1", + "metadata": { + "vscode": { + "languageId": "prolog" + } + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Prolog", + "language": "prolog", + "name": "prolog_kernel" + }, + "language_info": { + "codemirror_mode": "prolog", + "file_extension": ".pl", + "mimetype": "text/x-prolog", + "name": "Prolog" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/logic_programming/2_IntroProlog.pdf b/logic_programming/2_IntroProlog.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0f643d127e2c60779fd92797dfe125a7f1dde51a GIT binary patch literal 125518 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%0Dyt@Wxq> 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 QGBGzc<5E?1^>^a}06_lwUjP6A literal 0 HcmV?d00001 -- GitLab