{"id":4278,"date":"2023-09-08T11:46:31","date_gmt":"2023-09-08T11:46:31","guid":{"rendered":"http:\/\/www.istratech.hr\/?p=4278"},"modified":"2024-05-09T07:28:04","modified_gmt":"2024-05-09T07:28:04","slug":"java-and-prolog-there-is-some-semisecret-connection","status":"publish","type":"post","link":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/","title":{"rendered":"Java and Prolog: There is some (semi)secret connection"},"content":{"rendered":"<p style=\"text-align: center;\"><strong>ABSTRACT<\/strong><\/p>\n<p>Today, machine learning (which is most often defined as a subset of artificial intelligence) is &#8220;in&#8221;, especially deep learning (deep neural networks) as a subset of machine learning. But we should not reject &#8220;classical&#8221; artificial intelligence and the Prolog programming language (Prolog and Lisp are the most commonly used programming language for &#8220;classical&#8221; AI).<\/p>\n<p>Prolog is based on mathematical logic, more specifically on the resolution method in first-order logic (although it also has second-order predicates).There are different libraries for Java and Prolog interoperability (a Java program calls a Prolog program or vice versa, a Java interpreter written in Prolog and vice versa &#8230;).But, it is less known that one important part of the Java Virtual Machine specification is defined through Prolog, i.e. there is Prolog code in the book &#8220;The Java Virtual Machine Specification&#8221;.<\/p>\n<p>The paper briefly covers the basics of mathematical logic, logic programming, the Prolog language and Prolog code in &#8220;The JVM Specification&#8221;. There is also an example of a Prolog program that the author made some 30 years ago, which &#8220;knows&#8221; how to derive, e. g., the function y = pow(x, x) \ud83d\ude42<\/p>\n<div class=\"more\"><a href=\"http:\/\/www.istratech.hr\/wp-content\/uploads\/2024\/02\/JavaCro2023_Sirotic.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">VIEW LECTURE<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>The paper briefly describes the basics of mathematical logic, logic programming, Prolog language and Prolog code from the book &#8220;The Java Virtual Machine Specification&#8221;.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"_themeisle_gutenberg_block_has_review":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[172,326],"tags":[],"class_list":["post-4278","post","type-post","status-publish","format-standard","hentry","category-blog-en","category-javacro-en"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Java and Prolog: There is some (semi)secret connection &#8211; Istra Tech<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Java and Prolog: There is some (semi)secret connection &#8211; Istra Tech\" \/>\n<meta property=\"og:description\" content=\"The paper briefly describes the basics of mathematical logic, logic programming, Prolog language and Prolog code from the book &quot;The Java Virtual Machine Specification&quot;.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/\" \/>\n<meta property=\"og:site_name\" content=\"Istra Tech\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-08T11:46:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-09T07:28:04+00:00\" \/>\n<meta name=\"author\" content=\"Istratech Admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Istratech Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/\"},\"author\":{\"name\":\"Istratech Admin\",\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/#\\\/schema\\\/person\\\/e56f98c854e5f471a7f577bd59ad397d\"},\"headline\":\"Java and Prolog: There is some (semi)secret connection\",\"datePublished\":\"2023-09-08T11:46:31+00:00\",\"dateModified\":\"2024-05-09T07:28:04+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/\"},\"wordCount\":200,\"articleSection\":[\"Blog\",\"JavaCRO\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/\",\"url\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/\",\"name\":\"Java and Prolog: There is some (semi)secret connection &#8211; Istra Tech\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/#website\"},\"datePublished\":\"2023-09-08T11:46:31+00:00\",\"dateModified\":\"2024-05-09T07:28:04+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/#\\\/schema\\\/person\\\/e56f98c854e5f471a7f577bd59ad397d\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/java-and-prolog-there-is-some-semisecret-connection\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Po\u010detna stranica\",\"item\":\"https:\\\/\\\/www.istratech.hr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java and Prolog: There is some (semi)secret connection\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/\",\"name\":\"Istra Tech\",\"description\":\"Digitalizacija sustava u turizmu, hotelijerstvu i ugostiteljstvu\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/#\\\/schema\\\/person\\\/e56f98c854e5f471a7f577bd59ad397d\",\"name\":\"Istratech Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/08879edf0fbdb4c56d3bb4908200f600e0bcbb50c215e720817e00946f6b4822?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/08879edf0fbdb4c56d3bb4908200f600e0bcbb50c215e720817e00946f6b4822?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/08879edf0fbdb4c56d3bb4908200f600e0bcbb50c215e720817e00946f6b4822?s=96&d=mm&r=g\",\"caption\":\"Istratech Admin\"},\"url\":\"https:\\\/\\\/www.istratech.hr\\\/en\\\/author\\\/istratech_admin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Java and Prolog: There is some (semi)secret connection &#8211; Istra Tech","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/","og_locale":"en_US","og_type":"article","og_title":"Java and Prolog: There is some (semi)secret connection &#8211; Istra Tech","og_description":"The paper briefly describes the basics of mathematical logic, logic programming, Prolog language and Prolog code from the book \"The Java Virtual Machine Specification\".","og_url":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/","og_site_name":"Istra Tech","article_published_time":"2023-09-08T11:46:31+00:00","article_modified_time":"2024-05-09T07:28:04+00:00","author":"Istratech Admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Istratech Admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/#article","isPartOf":{"@id":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/"},"author":{"name":"Istratech Admin","@id":"https:\/\/www.istratech.hr\/en\/#\/schema\/person\/e56f98c854e5f471a7f577bd59ad397d"},"headline":"Java and Prolog: There is some (semi)secret connection","datePublished":"2023-09-08T11:46:31+00:00","dateModified":"2024-05-09T07:28:04+00:00","mainEntityOfPage":{"@id":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/"},"wordCount":200,"articleSection":["Blog","JavaCRO"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/","url":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/","name":"Java and Prolog: There is some (semi)secret connection &#8211; Istra Tech","isPartOf":{"@id":"https:\/\/www.istratech.hr\/en\/#website"},"datePublished":"2023-09-08T11:46:31+00:00","dateModified":"2024-05-09T07:28:04+00:00","author":{"@id":"https:\/\/www.istratech.hr\/en\/#\/schema\/person\/e56f98c854e5f471a7f577bd59ad397d"},"breadcrumb":{"@id":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.istratech.hr\/en\/java-and-prolog-there-is-some-semisecret-connection\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Po\u010detna stranica","item":"https:\/\/www.istratech.hr\/"},{"@type":"ListItem","position":2,"name":"Java and Prolog: There is some (semi)secret connection"}]},{"@type":"WebSite","@id":"https:\/\/www.istratech.hr\/en\/#website","url":"https:\/\/www.istratech.hr\/en\/","name":"Istra Tech","description":"Digitalizacija sustava u turizmu, hotelijerstvu i ugostiteljstvu","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.istratech.hr\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.istratech.hr\/en\/#\/schema\/person\/e56f98c854e5f471a7f577bd59ad397d","name":"Istratech Admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/08879edf0fbdb4c56d3bb4908200f600e0bcbb50c215e720817e00946f6b4822?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/08879edf0fbdb4c56d3bb4908200f600e0bcbb50c215e720817e00946f6b4822?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/08879edf0fbdb4c56d3bb4908200f600e0bcbb50c215e720817e00946f6b4822?s=96&d=mm&r=g","caption":"Istratech Admin"},"url":"https:\/\/www.istratech.hr\/en\/author\/istratech_admin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/posts\/4278","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/comments?post=4278"}],"version-history":[{"count":0,"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/posts\/4278\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/media?parent=4278"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/categories?post=4278"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.istratech.hr\/en\/wp-json\/wp\/v2\/tags?post=4278"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}