Logo

    prolog

    Explore " prolog" with insightful episodes like "The Stories of Christmas – Johannes: Damit du glaubst – Silke Wagner", "What is The Best Programming Language", "Revenge of the Shape Rotators", "Craic and Code #1" and "11.3.1 Die ersten vier Sätze des Johannesevangeliums" from podcasts like ""ICF Herrenberg | Audio-Podcast", "Code and Craic", "Code and Craic", "Code and Craic" and "Worthaus Podcast"" and more!

    Episodes (14)

    What is The Best Programming Language

    Revenge of the Shape Rotators

    Revenge of the Shape Rotators

    Twitch channel with the full show: https://www.twitch.tv/terminusdb

    Pluggable Auth in TerminusDB: https://gist.github.com/GavinMendelGleason/b4f0c32e893549a9633e1e5a8a87b889

    Check it out in action: dashboard.terminusdb.com

    Vice piece on Wordcels and Shape Rotators: https://www.vice.com/en/article/pkpqzb/ok-wtf-are-wordcels-and-shape-rotators

    The inventor of the concept: https://twitter.com/tszzl

    And his blog telling us what it is all about: https://roonscape.substack.com/p/a-song-of-shapes-and-words

    The game we were playing ('play zig zag'): https://vladimirslepnev.itch.io/zigzag

     

    #4 - Markus Triska on constraints and the power of Prolog

    #4 - Markus Triska on constraints and the power of Prolog

    Visit the show's web page: thesearch.space

    Show notes

    The Power of Prolog, Markus' ongoing book project

    "It says, 'Find your way from darkness to light,' which is one of the quotes that occurs in The Knight of Cups, which is a recent movie by Terrence Malick."


    "I was introduced to Prolog by Ulrich Neumerkel at the Vienna University of Technology."


     "the convener of the Prolog ISO standard group."


    "He has developed his own teaching environment called GUPU, which means talk-assisted programming environment [Gesprächsunterstützende Programmierübungsumgebung]."


    Declarative program development in Prolog with GUPU (paper)

    "one fellow student came to me and asked for a solution to [what] you may now know as the SEND MORE MONEY task."

    SEND + MORE = MONEY

    "People have ... in different languages, explored multi-dispatch, multi-methods, and all kinds of stuff."


    "... the notion that an algorithm can be decomposed into a logic aspect and a control aspect. So this is written as 'algorithm is logic plus control.'"


    "...let's look at the HTTP framework of SWI-Prolog"


    "...the first use case that Prolog should solve was translating weather reports between French and English. It was the METEO system..."


     "For this purpose ... DCGs were invented. So this is a sub-formalism in Prolog that lets us describe lists in a very natural way."


    "...you have kind of a special syntax with the keyword is, and many of the normal, nice properties of Prolog start breaking down."

    (is)/2  is not actually a keyword or a special syntax. Markus describes the issues involved very well here:

    https://github.com/triska/clpz#an-impure-alternative-low-level-integer-arithmetic

    and here:

    https://www.metalevel.at/prolog/clpz

     "It is abbreviated as CSP: Constraint Satisfaction Problem."


    "You have variables, you have associated domains, which in plain Prolog are always Herbrand terms, named after Jaques Herbrand."


    "In the literature, this has even been mentioned as the Holy Grail of computer science. This property [or] at least the idea that users or application programmers specify a task and the system solves it."


    Eugene  C  Freuder.  “In  pursuit  of  the  holy  grail”.  In:Constraints 2.1 (1997), pp. 57–61. (not freely available)

    There is an ongoing series of workshops following up on the ideas in the original paper:

    https://freuder.wordpress.com/pthg-20-the-fourth-workshop-on-progress-towards-the-holy-grail/

    "For comparison, [...] the constraint solver for SICStus Prolog is hundreds of times faster than for example what I've implemented."


    > "rusty-wam, implemented in Rust"
    (hence renamed Scryer Prolog, with Markus being an active contributor)

    > "There is O-Prolog, which is implemented by Kenichi Sasagawa from Japan."

    > "..in the case of Tau Prolog, it's implemented in JavaScript and they can embed Prolog in a web browser"


    The Power of Prolog YouTube channel

    ★ Support this podcast ★

    #3 - Chris Martens on narrative generation

    #3 - Chris Martens on narrative generation

    Visit the show's web page: thesearch.space

    Show notes

    Chris Martens' academic website
    https://www.csc.ncsu.edu/people/crmarten

    04:30

    "Programming Interactive Worlds with Linear Logic", Chris' Ph.D. thesis

    06:10
    James Meehan’s, Tale-Spin thesis
    "The Metanovel: Writing Stories by Computer"

    A great post about the story of Tale-Spin's creation:
    https://grandtextauto.soe.ucsc.edu/2006/09/13/the-story-of-meehans-tale-spin/

    18:40
    The Twelf Project

    "a language used to specify, implement, and prove properties of deductive systems such as programming languages and logics"

    The dependently typed logif LF


    20:50
    Linear logic

    Jean-Yves Girard

    The original paper
    (The first sentence begins: "Linear logic is a logic behind logic...")

    22:00
    "A form of logical implication pronounced A lolly B" ... I wish I had a screen to draw on"
    Looks like this:  A -o B  (a modified arrow from A to B)

    25:10

    The frame problem

    25:20
    Temporal logic
    Event calculus

    26:50
    Pandemic board game

    "5% of my design royalty for Pandemic products is donated directly to Doctors Without Borders"

    https://www.leacock.com/about

    44:40
    Interactive fiction

    "software simulating environments in which players use text commands to control characters and influence the environment"

    https://www.ifarchive.org/

    47:30
    Behavior trees

    56:00
    R. Michael Young

    "His research focuses on the development of computational models of interactive narrative with applications to computer games, educational and training systems and virtual environments."


    57:30
    https://twitter.com/chrisamaphone
    github.com/chrisamaphone

    ★ Support this podcast ★

    #1 - The Poet of Logic Programming

    #1 - The Poet of Logic Programming

    Show notes

    08:10
    John Alan Robinson
    https://en.wikipedia.org/wiki/John_Alan_Robinson

    Computational Logic: Memories of the Past and Challenges for the Future
    http://www.computational-logic.org/iccl/downloads/Robinson-CL2000.pdf

    Maarten van Emden has great material about Robinson, including two interviews:

    • https://vanemden.wordpress.com/2016/09/16/alan-robinson/
    • https://vanemden.wordpress.com/2010/06/08/interview-with-alan-robinson-inventor-of-resolution-logic/
    • http://aarinc.org/Newsletters/089-2010-10.html#robinson


    08:55
    The Early Years of Logic Programming (Kowalski)
    https://www.doc.ic.ac.uk/~rak/papers/the%20early%20years.pdf

    12:05
    The British Nationality Act as a Logic Program
    https://www.doc.ic.ac.uk/~rak/papers/British%20Nationality%20Act.pdf

    12:45
    Horn clause logic
    https://en.wikipedia.org/wiki/Horn_clause

    14:32
    Dual process theory
    https://en.wikipedia.org/wiki/Dual_process_theory
    https://en.wikipedia.org/wiki/Thinking,_Fast_and_Slow

    16:30
    Alternatives to logic representations of knowledge

    • https://en.wikipedia.org/wiki/Semantic_network
    • https://en.wikipedia.org/wiki/And%E2%80%93or_tree
    • https://www.doc.ic.ac.uk/~rak/papers/History.pdf


    17:10
    Minsky’s frames
    https://en.wikipedia.org/wiki/Frame_(artificial_intelligence)

    17:30
    Non-monotonic logic
    https://en.wikipedia.org/wiki/Non-monotonic_logic

    18:10
    First-order logic
    https://en.wikipedia.org/wiki/First-order_logic

    20:45
    List concatenation (the append/3 predicate)
    http://www.learnprolognow.org/lpnpage.php?pagetype=html&pageid=lpn-htmlse24

    23:55
    Datalog
    https://en.wikipedia.org/wiki/Datalog

    Answer Set Programming
    https://en.wikipedia.org/wiki/Answer_set_programming

    25:50
    Cordell Green
    https://en.wikipedia.org/wiki/Cordell_Green

    26:50
    "it was Cordell who was interested in knowledge representation"

    STANFORD ARTIFICIAL INTELLIGENCE PROJECT, MEMO Al-96
    The Application of Theorem Proving to Question-Answering Systems

    https://www.kestrel.edu/home/people/green/publications/green-thesis.pdf

    Theorem-Proving by Resolution as a Basis for Question-Answering Systems
    https://www.kestrel.edu/home/people/green/publications/theorem-proving.pdf

    29:50
    Planner, Hewitt, Winograd
    https://en.wikipedia.org/wiki/Planner_(programming_language)
    https://en.wikipedia.org/wiki/Terry_Winograd

    35:00
    Monads
    https://en.wikipedia.org/wiki/Monad_(functional_programming)

    40:10
    Alain Colmerauer
    https://en.wikipedia.org/wiki/Alain_Colmerauer

    Un Systeme de Communication Homme-Machine en Francais
    http://alain.colmerauer.free.fr/alcol/ArchivesPublications/HommeMachineFr/HoMa.pdf

    42:00
    Pat Hayes
    https://en.wikipedia.org/wiki/Pat_Hayes
    https://www.ihmc.us/groups/phayes/

    43:15
    The Birth of Prolog (Alain Colmerauer and Philippe Roussel)
    http://alain.colmerauer.free.fr/alcol/ArchivesPublications/PrologHistory/19november92.pdf

    46:00
    Computational Logic and Human Thinking: How to be Artificially Intelligent
    https://www.doc.ic.ac.uk/~rak/papers/newbook.pdf

    49:00
    The Pyramid Principle: Logic in Writing and Thinking (Barbara Minto)
    https://www.goodreads.com/book/show/1990595.The_Pyramid_Principle

    51:00
    Unification
    https://en.wikipedia.org/wiki/Unification_(computer_science)

    52:20
    Backtracking
    https://en.wikipedia.org/wiki/Backtracking

    56:10
    Production rules
    https://en.wikipedia.org/wiki/Production_system_(computer_science)

    57:10
    Expert systems
    https://en.wikipedia.org/wiki/Expert_systems

    01:08:30
    The Fifth Generation Computer Systems project
    https://en.wikipedia.org/wiki/Fifth_generation_computer

    1:09:50
    MapReduce
    https://en.wikipedia.org/wiki/MapReduce

    1:17:00
    Event calculus
    https://en.wikipedia.org/wiki/Event_calculus

    1:18:20
    Logic Production Systems
    http://lps.doc.ic.ac.uk/

    1:19:40
    Logical Contracts (company)
    http://logicalcontracts.com/

    1:29:45
    Minsky's attack on the perceptron
    https://en.wikipedia.org/wiki/Perceptron

    ★ Support this podcast ★

    Trailer

    Trailer

    Logic Programming, you say? That might sound like either an oxymoron or a tautology to you, depending on who you are. If you have heard about Logic Programming before, you are probably thinking about Prolog - a programming language that is almost 50 years old, and which many find fascinating but also frustratingly limited.

    What is logic? Many people consider it synonymous with dry intellect, humorless bureaucracy, the opposite of creativity. But in my understanding, logic is an attempt to capture the essence of thought, which is to say the essence of what we humans find reasonable, persuasive, and possible. The study of logic goes straight to some of our fundamental intuitions about the world and ourselves, and it's really not clear at all what they are rooted in. People have lots of different opinions about this. Logic looks very clear-cut on the surface, but when you dig you bump into some of the deepest perennial questions in philosophy. And this doesn't change when we arrive at modern, formalized logic, which sort of looks like mathematics - you are still dealing with deep questions about human psychology and cognition, and how we perceive the physical world.

    Now, it turns out formal logic can be used as a programming language. If you are careful about which parts of logic you use, and in which form you write things down, formal logic fits very well with how programming languages are executed. So you can write down some logical formulas, and you get two interpretations: the logical interpretation, and the procedural interpretation which is how you run it on a computer. And these two are, let's say, in sync - you get the deductions you would expect from both interpretations.

    As a programming paradigm, this has some really unusual and fun features, and since logic in the first place is, again, an attempt to capture the essence of human though, Logic Programming is in many respects very intuitive. To me, it's the closest to what I imagined programming would be like when I was 10 and had just started to understand that there was a way to tell computers what to do.

    ★ Support this podcast ★

    Pattern-based Ontology Design

    Pattern-based Ontology Design
    * [Ontolog] Invited Speaker session on "Pattern-based Ontology Design" with Mr. AldoGangemi and Dr. ValentinaPresutti (from the Semantic Technology Lab, ISTC-CNR, Rome, Italy) - Thu 2009.02.05 * see the session page on the Ontolog wiki at: http://ontolog.cim3.net/cgi-bin/wiki.pl?ConferenceCall_2009_02_05

    Rules in Semantic Web Applications

    Rules in Semantic Web Applications
    * [Ontolog] Panel discussion on "Rules in Semantic Web Applications." This is part-2 of a two part sequel on Semantic Web Rules (which started with Dr. Chris Welty's talk on the W3C-RIF Standard on 2008.06.12.) On this panel are Dr. Leo Obrst (MITRE, Ontolog and chair of this session), Dr. Jos de Bruijn (Free University of Bozen-Bolzano, Italy) and Mr. Martin O'Connor (Stanford-BMIR) - Thu 2008.06.26 * see the session page on the Ontolog wiki at: http://ontolog.cim3.net/cgi-bin/wiki.pl?ConferenceCall_2008_06_26
    Logo

    © 2024 Podcastworld. All rights reserved

    Stay up to date

    For any inquiries, please email us at hello@podcastworld.io