<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">On Teaching Logic Programming in the Era of Generative AI</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Paul</forename><surname>Tarau</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of North Texas</orgName>
								<address>
									<settlement>Denton</settlement>
									<country key="US">USA</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">On Teaching Logic Programming in the Era of Generative AI</title>
					</analytic>
					<monogr>
						<idno type="ISSN">1613-0073</idno>
					</monogr>
					<idno type="MD5">1A9B0DD5DB98686BFD7E3F2329E8A539</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2025-04-23T19:51+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>After fact finding on the disruption bought by today's Generative AI tools to the education system, we outline the advantages of joining the disruption, motivated by the natural synergies between today's Generative AI and Logic Programming Languages, derived from both their similar and complementary reasoning mechanisms.</p><p>We explore engagement strategies for AI assistants with specifics on Prolog teaching and also in the wider context of online teaching and automation of teaching processes, including AI-assisted evaluation strategies for student success. In particular, we overview and explore in some detail AI-based Prolog code generators, gamification, computational thinking in logic-focussed natural language, and the use of multi-agent AI systems.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Keywords</head><p>AI as a disruptor of education systems, AI as a disruptor of Logic Programming teaching process, engagement strategies forAI assistants, synergies between Logic Programming and Generative AI, AIassisted Prolog coding</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.">Introduction</head><p>We will focus on technical aspects for engaging the AI disruption. It is however of paramount importance to parallel and evaluate our pragmatic fact finding and entailed reasoning steps with alignment to legal, ethical and moral values, integrity, fairness and equity which are not covered in this paper.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">The Facts on the Generative AI Disruption of Education</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1.">The Domain-independent disruption</head><p>Our current educational technologies have over the last 50 years incrementally refined the closely interrelated aspects of training, testing and student evaluation and, to a much lesser extent, the real-world outcomes of the teaching process. At the same time, leftovers for its 2000+ years baggage focussed on replicating memorized content rather than actionable generalization and creativity are still present in the evaluation mechanisms of of educational processes.</p><p>With the focus on verifiable metrics, our often over-automated grading processes, driven by market-dictated cost reduction on human grader involvement, have created a perfect breading ground for Generative AI induced gaming opportunities against typical grading systems<ref type="foot" target="#foot_0">1</ref> .</p><p>Some key facts on the impact on evaluation of student success can be summarized as follows:</p><p>• The advanced capabilities of AI models make it nearly impossible to detect AI-generated essays or multiple choice problems, rendering traditional plagiarism detection methods ineffective. • Educators might need to reconsider the purpose and structure of assignments, including essays and problem sets, in light of AI's ability to generate content and solve complex problems. • The rapid changes brought by AI in education demand immediate adjustments from instructors and the creation of clear policies regarding AI use to preserve educational integrity while embracing its potential benefits.</p><p>Let's follow up with an instance of a pragmatic (notwithstanding its ethical aspects!) decision that a typical average student faces.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>The cheating paradox</head><p>The following case study (with kind assistance from GPT-4o on obvious details) puts on the table an aspect of the a commonly used grading process, that an average student focusing on passing a course with as high grades as possible faces:</p><p>Example 1. After submitting the following set of assumptions to the GPT-4o assistant, actually as a simple math word problem to solve:</p><p>Assume that we grade courses with 40% home work, 30% Midterm Exam and 30\% Final Exam.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>It is known that AI-assisted cheating on homework reduces exam performance by around 5%.</head><p>Assuming that AI-assisted cheating on home works gives 95% on them and that under honest hard work the student would obtain a 70% grade.</p><p>Which of the AI-assisted cheating and the honest strategy would give the highest grade to the student? Give me a short final answer just citing the grades and their difference in %.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>we get:</head><p>With AI-assisted cheating: -AI-assisted strategy gives 6% higher final grade than the honest strategy.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2.">The Domain Specific Disruption : Prolog</head><p>Let us now focus, by taking advantage of GPT-4o's Prolog programming skills, to solve a beginner-level Prolog assignment testing list processing.</p><p>Example 2. We start with the query: with the correct results computed by the AI's implicit Prolog reasoning engine:</p><p>?-first_5_twin_primes(Result). Result = [ <ref type="bibr" target="#b2">(3,</ref><ref type="bibr" target="#b4">5)</ref>, <ref type="bibr" target="#b4">(5,</ref><ref type="bibr" target="#b6">7)</ref>, <ref type="bibr" target="#b10">(11,</ref><ref type="bibr" target="#b12">13)</ref>, <ref type="bibr">(17,</ref><ref type="bibr">19)</ref>, <ref type="bibr">(29,</ref><ref type="bibr">31)</ref>].</p><p>Note also a limitation here: the program will not manage a very large number of twin prime pairs as AI's math skills are still imperfect on computations with large values.</p><p>The AI-assisted code generation quality extends to puzzles stated in natural language, reachability problems, transitive closure, graph coloring and combinatorial problems, with often first shot correct and elegant, well documented Prolog programs.</p><p>Our conclusion here is that today's top Generative AI models (e.g. OpenAI GPT-4o, Anthropic's Claude, Google's Gemini, etc.,) know more than enough Prolog coding for covering at least the teaching domain and specifically its student evaluation subdomain.</p><p>We encourage the reader to try out similar examples for intuition on the domain coverage of the Prolog Generative AI coder, both when restricted to teaching and also on snippets of industrial strength code covering Prolog based knowledge graphs, Definite Clause Grammars, networking, planning and constraint-solving problems, Prolog-based Web apps, and so on.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.3.">On the logic of joining the disruption</head><p>Generative AI-denial is a natural, partly rational, partly emotion-driven reaction of practitioners of symbolic AI, Natural Language Processing and classic Machine Learning that are prime disruption targets of it, as it suddenly deprecates years of hard work on significant academic and industrial achievements.</p><p>While keeping this in mind, we will explore here a rational and pragmatic path for joining the disruption motivated by the natural synergies that Logic Programming and Generative AI have together. In fact, it became obvious to this author much earlier, at the time of pure text completion models like GPT3 and and declarative image builders like DALL.E that the disruption enables the use of Prolog tools like Definite Clause grammars as generators for prompt and image synthesis <ref type="bibr" target="#b0">[1]</ref>.</p><p>As a recent proof of concept, illustrating the fast progress in the field, we refer to <ref type="bibr" target="#b1">[2]</ref> as a prototypical example for the impressive performance gains brought by interleaving Prolog and AI steps on a set of difficult reasoning benchmarks.</p><p>The more than 100 entries of the leaderboard at lmsys.org of a competition between LLMs, based on an ELO tournament that pairs them to be judged by thousands of user votes on the quality of their output, testifies on the accelerated evolution of today's Generative AI systems<ref type="foot" target="#foot_1">2</ref> .</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">Engagement strategies with AI Assistants</head><p>We will next explore several engagement strategies with Generative AI-based teaching assistants.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1.">A basic AI engagement strategy</head><p>• Learn underlying concepts, try to solve the problem. • If stuck, iterate a few times with alternative ways to look at it. • If still stuck, call the AI-assistant using the instructor-provided prompt or your own.</p><p>• After reading the solution, answer to a set of multiple choice questions about the AI's code.</p><p>The instructor can use the results of your answers for grading.</p><p>Note that this could be still automated by the instructor's code asking the LLM to grade the resulting code if submitted and grading the answers to the follow-up AI generated question. See our WebApp<ref type="foot" target="#foot_2">3</ref> for a (recursive) follow-up question generator.</p><p>In the case of Prolog, this AI-assisted coding pipeline can be refined by requiring the students to run the AI's code and explain the results of a few spy points by tracing the execution.</p><p>On interactive online engagement on platforms like Canvas <ref type="foot" target="#foot_3">4</ref> , engaging in discussion groups on the AI generated code can provide a richer learning experience that is also gradable by the instructor or an AI assistant.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2.">Gamification</head><p>Gamification<ref type="foot" target="#foot_4">5</ref> relies on borrowing elements from the gaming world students are naturally exposed to. An example of AI assisted gamified learning process looks as follows:</p><p>• an assignment requests a small group of students to compare a Prolog problem given by each to a different AI of their choice • the students will be timed on testing and possibly debugging the AI-provided solutions and gain points, banners etc. for their performance • the students discuss the merits and demerits of each in a Canvas forum with a partial grade originating from their participation in the forum, possibly evaluated by an AI-agent if we want a fully automated grading process.</p><p>A refinement to the grading would be that allowing AI-assistance (seen as the equivalent of "magic spells" in a game) will have a point cost. Thus, it will need, like in the gaming world, some extra work to refill the player's "strength level", with clear learning benefits in this case. Another approach, easy to implement in practice, would be organizing student coding contests with participation of (possibly artificially weakened) AI antagonists. This is particularly effective when the problems' solution is is already known to the learner or it has even been previously implemented in a different language.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.">Engagement with Natural Language and Logic Programming</head><p>Given its syntactic and semantic features, it makes sense, when teaching Prolog, to focus on closeness to natural language while keeping in mind the importance of learnability, presence of flexible execution mechanisms and exposure to Prolog's highly expressive language constructs.</p><p>Good barometers for learnability are the learning curves of newcomers (including children in their early teens), the hurdles they experience and the projects they can achieve in a relatively short period of time. Another observable to watch is how well one can pick up the language inductively, simply by looking at coding examples.</p><p>When thinking about what background can be assumed in the case of newcomers, irrespectively of age, natural language pops up as a common denominator. As logic notation originates in natural language, there are conspicuous mappings between verbs and predicates and nominal groups as their arguments, especially relevant when solving knowledge representation problems.</p><p>That hints toward learning methods and language constructs easily mapped syntactically and semantically to natural language equivalents. Along these lines, our Natlog system<ref type="foot" target="#foot_5">6</ref>  <ref type="bibr" target="#b2">[3,</ref><ref type="bibr" target="#b3">4]</ref> enforces closeness to Natural Language by a simplified, flat Prolog syntax while opening access to Python's rich finite set and coroutining primitives, while ensuring its smooth integration in the Python-based deep learning ecosystem.</p><p>The reader is invited to try out Natlog programs online <ref type="foot" target="#foot_6">7</ref> .</p><p>The following code snippets give a hint about Natlog's code focusing on learnability while keeping in mind a focus on expressiveness as a key programming language feature. Example 4. Natlog as a syntactically lighter Prolog equivalent:</p><formula xml:id="formula_0">mother of X M: parent of X M, female M.</formula><p>father of X M: parent of X M, male M. grand parent of X GP: parent of X P, parent of P GP. ancestor of X A : parent of X P, parent or ancestor P A.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>parent or ancestor P P. parent or ancestor P A : ancestor of P A.</head><p>Example 5. Natlog as expressive code defining at source level a the primitive findall/3: stack S : `list S.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>push S X : #meth_call S append (X). pop S X : `meth_call S pop () X. findall X G Xs: listof X G S, to_cons_list S Xs. listof X G S: stack S, collect_ X G S. collect_ X G S : call G, `copy_term X CX, push S CX, fail. collect_ _X _G _S.</head><p>As saliently emphasized in <ref type="bibr" target="#b4">[5]</ref> there's an important distinction to be made between Prolog as a programming language and Prolog as knowledge representation language. This will become relevant both for deciding the content of teaching materials and the AI-assistant teaching strategies.</p><p>When focusing on the latter, AI-assistance will express its results in the form of a Propositional Horn Clause program, with facts and the rules connecting them consisting of natural language statements or noun groups describing concepts and their details. This involves a recursive descent processes starting with a knowledge exploration initiator expressed as a sentence or a key concept, that returns executable Prolog programs that can be evaluated with a simple fixpoint iteration or in tabling-enabled Prolog system like XSB <ref type="bibr" target="#b5">[6]</ref> or SWI-Prolog <ref type="bibr" target="#b6">[7]</ref>.</p><p>We refer to <ref type="bibr" target="#b7">[8]</ref> and <ref type="bibr" target="#b8">[9]</ref> for details of this process and invite the reader to interact with our online deepllm streamlet app<ref type="foot" target="#foot_7">8</ref> illustrating it. Fig. <ref type="figure" target="#fig_1">1</ref> shows an example exploring the concept of "inductive definition". Note that, besides the uses for actually introducing a student to Prolog programming, the close connection to natural language exposes the student to a Prolog-inspired computational thinking processes, involving task decomposition, with its complementary aspects of refinement and exploration of alternatives.</p><p>As an additional instructional tool, the deepllm app also builds an extended concept graph to expose deeper, LLM-generated relations to similar concepts. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.4.">Teaching with multi-agent AI systems</head><p>A strong trend in today's large scale, industrial strength AI API based applications is the the use of multi-agent architectures 9 chaining together custom code, vector store and database calls as well as LLM API calls.</p><p>An AI-driven multi-agent online course architecture could involve a society of specialized AI agents, that in its Prolog instance would look like the following:</p><p>• Prolog code generator assistant • Prolog code critique and bug finder • natural language to/from executable Prolog translator • conversation animator AI bot as part team projects or forums • instructor representative as performance evaluator 9 https://python.langchain.com/v0.1/docs/modules/agents/ The multi-agent society's members could watch and react to unblock students based on the Agents' specific skills and available tools using a publish-subscribe architecture while keeping track of each student progress in a student-specific memory track.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.5.">AI-assisted teaching with human in the loop</head><p>We have focussed so far on scenarios involving AI-assisted automated and scalable online teaching tools that are (slowly but firmly) becoming prevalent in the education system. However even in the context, the presence of the human in the loop<ref type="foot" target="#foot_8">10</ref> is of paramount importance.</p><p>Real time or asynchronous presence of the human instructor can be naturally integrated when unexpected events are likely to occur in the process. Ideally, in a large scale online teaching system this could be an instant real-time intervention by an instructor, possibly assisted by an AI-generated summary of the blockers a given student faces. At a smaller scale, help ticket-style event queues and blackboards could be made available soliciting instructor intervention with well-defined status details.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.6.">Some "out of The box" ideas on on reshaping upcoming AI-assisted Teaching Methodologies</head><p>We sketch here a few possible refinements and adaptations given the availability of large scale generative AI to the two sides of the educational process: students and their instructors.</p><p>Transition from penalty-based to reward-based teaching systems Similarly to the success of Reinforcement Learning in the training loops of the today's user-facing LLMs, possibly also seen as part of a gamification process, reward-based engagement has plenty of room to replace or complement today's penalty-based student-evaluation mechanisms.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Spontaneous social network study groups among remote online friends exposed to a diversity of teaching systems</head><p>With physical colocation loosing some of its relevance to joint interests on social network co-presence and exposure to a wider diversity of teaching methods, often crossing country borders, is an opportunity to acquire intuitions about key concepts learned in the conventional school systems and synchronize terminological barriers.</p><p>Facilitate curiosity-driven AI-assisted self study With personalized, user aware generative AI (e.g., Character AI's agents <ref type="foot" target="#foot_9">11</ref> ), individual curiosity on a school topic can be explored directly and turned into a learning process while interacting with the customized agent aware of past interactions with its owner.</p><p>Industry-inspired project-driven learning with AI assistance It is by now standard practice in industrial code development to use tools (e.g., Github Copilot 12 ) that revise or even create and inject new code in the coder's development pipeline. This is particularly useful in project-based courses like terminal undergrad classes or in-depth graduate classes involving software artifacts as deliverables.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Focus on spending teaching time on the "why" besides the "how" in problem solving</head><p>The "why" part has often been skipped over in the teaching process partly to keep the focus on the topic at hand and partly because its extent is often too wide to be presented under the time-constraints of the teaching time and the student evaluation process. Nevertheless, presenting the "ontology" covering not only the taxonomical relations between concepts but also their historical origins can be enlightening and Generative AI assistants can complement the course content with them, without a significant burden on instructor time.</p><p>Extend the narrow domain-specific teaching to encompass the spectrum of related concepts to which students might have been already exposed This ranges from text simplification and a jargon removal using classic prompts like "explain me X such that a 9 years old can understand it" to using AI-generated relation graphs exposing similarities, generalizations and analogies to concepts in nearby fields. In particular, one can use AI-assistants to help "connect the dots" by forming solid intuitions of the concepts hiding beyond domain-specific taxonomies.</p><p>Moving from canned routines and memorized factoids to actionable knowledge outcomes This is an uphill battle against a 2000+ years tradition, but it might be facilitated by appropriate AI-assistance to encourage immersive content-driven learning.</p><p>It also involves rethinking of deadline-driven assignments, with focus on quality vs. quantity, as well as prioritizing of the learning outcomes vs. the convenience of assigning and grading the work.</p><p>There are also the usual market pressures exercised on "teaching as a business", but dropping the AI-cheatable canned multiple-choice questions in favor of AI-assisted engagement in actual content creation looks feasible given the technical competence of today's a generative AI systems.</p><p>Design course materials to include video presentations of AI-assisted teaching Finally, the wide availability of high quality multi-media teaching materials suggest producing content that describes not just the topic at hand, but also the instructor's interaction with Generative AI agents, to build, clarify and present the content creation process and its outcomes.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">A brief Related Work Overview</head><p>The domain is fast shifting to the point that even a few months old related work, covering different tools or assuming deprecated limitations and features of now out of use AI models loses its informational value. We focus here on some work on Logic Programming and Generative AI that show a long term vision and development plans or some possibly out of the box thinking about the topic.</p><p>Goal-directed ASP systems like s(CASP) <ref type="bibr" target="#b9">[10]</ref>, have provided forms of non-monotonic and co-inductive reasoning. With enhanced constructive constraint programming algorithms, going back to <ref type="bibr" target="#b10">[11]</ref> and presenting also explanations covering the reasons of negative outcomes, they show synergies between these extensions to Prolog and Generative AI induced logic program snippets <ref type="bibr" target="#b11">[12]</ref>.</p><p>A more direct approach is recursion on LLM queries, by chaining the LLM's distilled output as input to a next step and casting its content and interrelations in the form of logic programs, to automate and focus this information extraction with minimal human input <ref type="bibr" target="#b7">[8,</ref><ref type="bibr" target="#b8">9]</ref>. Like in the case of typical RAG architectures <ref type="bibr" target="#b12">[13,</ref><ref type="bibr" target="#b13">14]</ref>, this process can rely on external ground truth but it can also use new LLM client instances as "oracles" deciding the validity of the synthesized rules or facts. We refer to <ref type="bibr" target="#b7">[8]</ref> for an extensive list of LLM-generated Horn clause programs and <ref type="bibr" target="#b8">[9]</ref> for a wider variety of them, including DCG encodings of recursive descents driven by AI-generated follow-up questions on a given topic as well as nicely visualized knowledge representation outputs.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.">Conclusion and Future Work</head><p>We have, hopefully, made it clear that it is widely beneficial to join the disruption that Generative AI assistance brings into teaching processes and also discussed the specifics of teaching Prolog in the context.</p><p>In fact, we can see Prolog teaching as a "Goldilocks" case, given the natural, reasoning-induced synergies between Prolog and Generative AI-based tools.</p><p>With this in mind, automated online teaching and student-testing tools based on Prolog code generation and natural language dialog threads expressed as logic representations ranging from propositional Horn clause or Datalog forms to specialized Prolog code and Definite Clause Grammars have the potential to be extended to similar teaching and student-testing techniques for logic languages like ASP and s(CASP) as possibly also refined to support other programming paradigms.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head></head><label></label><figDesc>and Final): 65 % (due to a 5% reduction) -Final grade: 0.40 * 95 + 0.30 * 65 + 0.30 * 65 = 76% With honest hard work: -Homework: 70% -Exams (Midterm and Final): 70% -Final grade: 0.40 * 70 + 0.30 * 70 + 0.30 * 70 = 70% Difference:</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: Exploring a concept as a Propositional Horn Clause Program</figDesc><graphic coords="8,89.29,204.31,421.92,385.92" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: Visualization of the concept graph related to "inductive definitions"</figDesc><graphic coords="9,90.25,149.62,414.78,260.71" type="bitmap" /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">https://www.oneusefulthing.org/p/post-apocalyptic-education</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1">https://lmarena.ai/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_2">https://auto-quest.streamlit.app/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_3">https://www.instructure.com/canvas</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="5" xml:id="foot_4">https://uwaterloo.ca/centre-for-teaching-excellence/catalogs/tip-sheets/gamification-and-game-based-learning</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="6" xml:id="foot_5">https://github.com/ptarau/natlog</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="7" xml:id="foot_6">https://natlog.streamlit.app</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="8" xml:id="foot_7">https://deepllm.streamlit.app/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="10" xml:id="foot_8">https://hai.stanford.edu/news/humans-loop-design-interactive-ai-systems</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="11" xml:id="foot_9">https://character.ai/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="12" xml:id="foot_10">https://github.com/features/copilot</note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">Reflections on Automation, Learnability and Expressiveness in Logic-Based Programming Languages</title>
		<author>
			<persName><forename type="first">P</forename><surname>Tarau</surname></persName>
		</author>
		<idno type="DOI">10.1007/978-3-031-35254-6_29</idno>
		<imprint>
			<date type="published" when="2023">2023</date>
			<publisher>Springer Nature</publisher>
			<biblScope unit="page" from="359" to="371" />
			<pubPlace>Switzerland; Cham</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title level="m" type="main">Reliable reasoning beyond natural language</title>
		<author>
			<persName><forename type="first">N</forename><surname>Borazjanizadeh</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">T</forename><surname>Piantadosi</surname></persName>
		</author>
		<ptr target="https://arxiv.org/abs/2407.11373.arXiv:2407.11373" />
		<imprint>
			<date type="published" when="2024">2024</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Natlog: a Lightweight Logic Programming Language with a Neuro-symbolic Touch</title>
		<author>
			<persName><forename type="first">P</forename><surname>Tarau</surname></persName>
		</author>
		<idno type="DOI">10.4204/EPTCS.345.27</idno>
	</analytic>
	<monogr>
		<title level="m">Proceedings 37th International Conference on Logic Programming (Technical Communications)</title>
				<editor>
			<persName><forename type="first">A</forename><surname>Formisano</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Y</forename><forename type="middle">A</forename><surname>Liu</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">B</forename><surname>Bogaerts</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Brik</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">V</forename><surname>Dahl</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><surname>Dodaro</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">P</forename><surname>Fodor</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><forename type="middle">L</forename><surname>Pozzato</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Vennekens</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">N.-F</forename><surname>Zhou</surname></persName>
		</editor>
		<meeting>37th International Conference on Logic Programming (Technical Communications)</meeting>
		<imprint>
			<date type="published" when="2021-09">September 2021. 2021</date>
			<biblScope unit="page" from="20" to="27" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Natlog: Embedding Logic Programming into the Python Deep-Learning Ecosystem</title>
		<author>
			<persName><forename type="first">P</forename><surname>Tarau</surname></persName>
		</author>
		<idno type="DOI">10.4204/EPTCS.385.15</idno>
	</analytic>
	<monogr>
		<title level="m">Proceedings 39th International Conference on Logic Programming</title>
				<editor>
			<persName><forename type="first">E</forename><surname>Pontelli</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">S</forename><surname>Costantini</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><surname>Dodaro</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">S</forename><surname>Gaggl</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">R</forename><surname>Calegari</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>D'avila Garcez</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><surname>Fabiano</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Mileo</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Russo</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><surname>Toni</surname></persName>
		</editor>
		<meeting>39th International Conference on Logic Programming<address><addrLine>Imperial College London, UK</addrLine></address></meeting>
		<imprint>
			<publisher>Open Publishing Association</publisher>
			<date type="published" when="2023-07-09">9th July 2023 -15th July 2023. 2023</date>
			<biblScope unit="volume">385</biblScope>
			<biblScope unit="page" from="141" to="154" />
		</imprint>
	</monogr>
	<note>Electronic Proceedings in Theoretical Computer Science</note>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Prolog as a Knowledge Representation Language The Nature and Importance of Prolog</title>
		<author>
			<persName><forename type="first">M</forename><surname>Genesereth</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Prolog -The Next 50 Years, number 13900</title>
				<editor>
			<persName><forename type="first">D</forename><forename type="middle">S</forename><surname>Warren</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">V</forename><surname>Dahl</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">T</forename><surname>Eiter</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Hermenegildo</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">R</forename><surname>Kowalski</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><surname>Rossi</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2023">2023</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">XSB: Extending Prolog with Tabled Logic Programming</title>
		<author>
			<persName><forename type="first">T</forename><surname>Swift</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Warren</surname></persName>
		</author>
		<author>
			<persName><forename type="first">David</forename></persName>
		</author>
		<idno type="DOI">10.1017/S1471068411000500</idno>
	</analytic>
	<monogr>
		<title level="j">Theory and Practice of Logic Programming</title>
		<imprint>
			<biblScope unit="volume">12</biblScope>
			<biblScope unit="page" from="157" to="187" />
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Swi-prolog</title>
		<author>
			<persName><forename type="first">J</forename><surname>Wielemaker</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Schrijvers</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Triska</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Lager</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theory and Practice of Logic Programming</title>
		<imprint>
			<biblScope unit="volume">12</biblScope>
			<biblScope unit="page" from="67" to="96" />
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<title level="m" type="main">Full Automation of Goal-driven LLM Dialog Threads with And-Or Recursors and Refiner Oracles</title>
		<author>
			<persName><forename type="first">P</forename><surname>Tarau</surname></persName>
		</author>
		<idno type="DOI">10.48550/arXiv.2306.14077</idno>
		<idno type="arXiv">arXiv:2306.14077</idno>
		<idno>arXiv:2306.14077</idno>
		<imprint>
			<date type="published" when="2023">2023</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">System description: Deepllm, casting dialog threads into logic programs</title>
		<author>
			<persName><forename type="first">P</forename><surname>Tarau</surname></persName>
		</author>
		<idno type="DOI">10.1007/978-981-97-2300-3_7</idno>
	</analytic>
	<monogr>
		<title level="m">Functional and Logic Programming</title>
				<editor>
			<persName><forename type="first">J</forename><surname>Gibbons</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">D</forename><surname>Miller</surname></persName>
		</editor>
		<meeting><address><addrLine>Singapore, Singapore</addrLine></address></meeting>
		<imprint>
			<publisher>Springer Nature</publisher>
			<date type="published" when="2024">2024</date>
			<biblScope unit="page" from="117" to="134" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Constraint answer set programming without grounding</title>
		<author>
			<persName><forename type="first">J</forename><surname>Arias</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Carro</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Salazar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Marple</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Gupta</surname></persName>
		</author>
		<idno type="DOI">10.1017/S1471068418000285</idno>
	</analytic>
	<monogr>
		<title level="j">Theory and Practice of Logic Programming</title>
		<imprint>
			<biblScope unit="volume">18</biblScope>
			<biblScope unit="page" from="337" to="354" />
			<date type="published" when="2018">2018</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Negation and Constraint Logic Programming</title>
		<author>
			<persName><forename type="first">P</forename><surname>Stuckey</surname></persName>
		</author>
		<idno type="DOI">10.1006/inco.1995.1048</idno>
		<ptr target="https://www.sciencedirect.com/science/article/pii/S0890540185710486.doi:10.1006/inco.1995.1048" />
	</analytic>
	<monogr>
		<title level="j">Information and Computation</title>
		<imprint>
			<biblScope unit="volume">118</biblScope>
			<biblScope unit="page" from="12" to="33" />
			<date type="published" when="1995">1995</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<monogr>
		<title level="m" type="main">A reliable common-sense reasoning socialbot built using llms and goal-directed asp</title>
		<author>
			<persName><forename type="first">Y</forename><surname>Zeng</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Rajashekharan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Basu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Wang</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Arias</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Gupta</surname></persName>
		</author>
		<ptr target="https://arxiv.org/abs/2407.18498.arXiv:2407.18498" />
		<imprint>
			<date type="published" when="2024">2024</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Retrieval-augmented generation for knowledge-intensive nlp tasks</title>
		<author>
			<persName><forename type="first">P</forename><surname>Lewis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Perez</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Piktus</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Petroni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Karpukhin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Goyal</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Küttler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Lewis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>-T. Yih</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Rocktäschel</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Advances in Neural Information Processing Systems</title>
		<imprint>
			<biblScope unit="volume">33</biblScope>
			<biblScope unit="page" from="9459" to="9474" />
			<date type="published" when="2020">2020</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<monogr>
		<title level="m" type="main">Raptor: Recursive abstractive processing for tree-organized retrieval</title>
		<author>
			<persName><forename type="first">P</forename><surname>Sarthi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Abdullah</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Tuli</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Khanna</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Goldie</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">D</forename><surname>Manning</surname></persName>
		</author>
		<idno type="DOI">10.48550/arXiv.2401.18059</idno>
		<idno type="arXiv">arXiv:2401.18059</idno>
		<ptr target="https://arxiv.org/abs/2401.18059.doi:10.48550/arXiv.2401.18059" />
		<imprint>
			<date type="published" when="2024">2024</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
