CINXE.COM

論理プログラミング - Wikipedia

<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="ja" dir="ltr"> <head> <meta charset="UTF-8"> <title>論理プログラミング - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )jawikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"ja", "wgMonthNames":["","1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],"wgRequestId":"e518c350-2d29-4265-944d-a99e8375d60b","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"論理プログラミング","wgTitle":"論理プログラミング","wgCurRevisionId":89962034,"wgRevisionId":89962034,"wgArticleId":794486,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["日本語版記事がリダイレクトの仮リンクを含む記事","BNE識別子が指定されている記事","BNF識別子が指定されている記事","BNFdata識別子が指定されている記事","GND識別子が指定されている記事","J9U識別子が指定されている記事","LCCN識別子が指定されている記事","NKC識別子が指定されている記事","論理プログラミング","プログラミングパラダイム","理論計算機科学", "形式手法","数理論理学","人工知能","数学に関する記事"],"wgPageViewLanguage":"ja","wgPageContentLanguage":"ja","wgPageContentModel":"wikitext","wgRelevantPageName":"論理プログラミング","wgRelevantArticleId":794486,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":true,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"ja","pageLanguageDir":"ltr","pageVariantFallbacks":"ja"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":30000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true, "wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q275603","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.gadget.PDFLinkIcon":"ready","ext.gadget.RedirectColor":"ready","ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.makeCollapsible.styles":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=[ "ext.cite.ux-enhancements","mediawiki.page.media","site","mediawiki.page.ready","jquery.makeCollapsible","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.NormalizeCharWidth","ext.gadget.suppressEnterAtSummaryBox","ext.gadget.checkSignature","ext.gadget.charinsert","ext.gadget.WikiMiniAtlas","ext.gadget.switcher","ext.gadget.protectionIndicator","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=ja&amp;modules=ext.cite.styles%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediaBadges%7Cext.wikimediamessages.styles%7Cjquery.makeCollapsible.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&amp;only=styles&amp;skin=vector-2022"> <script async="" src="/w/load.php?lang=ja&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=ja&amp;modules=ext.gadget.PDFLinkIcon%2CRedirectColor&amp;only=styles&amp;skin=vector-2022"> <link rel="stylesheet" href="/w/load.php?lang=ja&amp;modules=site.styles&amp;only=styles&amp;skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="論理プログラミング - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//ja.m.wikipedia.org/wiki/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0"> <link rel="alternate" type="application/x-wiki" title="編集" href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (ja)"> <link rel="EditURI" type="application/rsd+xml" href="//ja.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://ja.wikipedia.org/wiki/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.ja"> <link rel="alternate" type="application/atom+xml" title="WikipediaのAtomフィード" href="/w/index.php?title=%E7%89%B9%E5%88%A5:%E6%9C%80%E8%BF%91%E3%81%AE%E6%9B%B4%E6%96%B0&amp;feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-論理プログラミング rootpage-論理プログラミング skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">コンテンツにスキップ</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="サイト"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="メインメニュー" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">メインメニュー</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">メインメニュー</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">サイドバーに移動</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">非表示</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> 案内 </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8" title="メインページに移動する [z]" accesskey="z"><span>メインページ</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%83%86%E3%82%A3%E3%83%BB%E3%83%9D%E3%83%BC%E3%82%BF%E3%83%AB" title="このプロジェクトについて、できること、情報を入手する場所"><span>コミュニティ・ポータル</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:%E6%9C%80%E8%BF%91%E3%81%AE%E5%87%BA%E6%9D%A5%E4%BA%8B" title="最近の出来事の背景を知る"><span>最近の出来事</span></a></li><li id="n-newpages" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E6%96%B0%E3%81%97%E3%81%84%E3%83%9A%E3%83%BC%E3%82%B8" title="最近新規に作成されたページの一覧"><span>新しいページ</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E6%9C%80%E8%BF%91%E3%81%AE%E6%9B%B4%E6%96%B0" title="このウィキにおける最近の更新の一覧 [r]" accesskey="r"><span>最近の更新</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E3%81%8A%E3%81%BE%E3%81%8B%E3%81%9B%E8%A1%A8%E7%A4%BA" title="無作為に選択されたページを読み込む [x]" accesskey="x"><span>おまかせ表示</span></a></li><li id="n-sandbox" class="mw-list-item"><a href="/wiki/Wikipedia:%E3%82%B5%E3%83%B3%E3%83%89%E3%83%9C%E3%83%83%E3%82%AF%E3%82%B9" title="練習用のページ"><span>練習用ページ</span></a></li><li id="n-commonsupload" class="mw-list-item"><a href="//commons.wikimedia.org/wiki/Special:UploadWizard?uselang=ja" title="画像やメディアファイルをウィキメディア・コモンズにアップロード"><span>アップロード (ウィキメディア・コモンズ)</span></a></li> </ul> </div> </div> <div id="p-help" class="vector-menu mw-portlet mw-portlet-help" > <div class="vector-menu-heading"> ヘルプ </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:%E7%9B%AE%E6%AC%A1" title="情報を得る場所"><span>ヘルプ</span></a></li><li id="n-villagepump" class="mw-list-item"><a href="/wiki/Wikipedia:%E4%BA%95%E6%88%B8%E7%AB%AF" title="プロジェクトについての意見交換"><span>井戸端</span></a></li><li id="n-notice" class="mw-list-item"><a href="/wiki/Wikipedia:%E3%81%8A%E7%9F%A5%E3%82%89%E3%81%9B" title="プロジェクトについてのお知らせ"><span>お知らせ</span></a></li><li id="n-bugreportspage" class="mw-list-item"><a href="/wiki/Wikipedia:%E3%83%90%E3%82%B0%E3%81%AE%E5%A0%B1%E5%91%8A" title="ウィキペディア・ソフトウェアのバグ報告"><span>バグの報告</span></a></li><li id="n-contact" class="mw-list-item"><a href="/wiki/Wikipedia:%E9%80%A3%E7%B5%A1%E5%85%88" title="ウィキペディアやウィキメディア財団に関する連絡先"><span>ウィキペディアに関するお問い合わせ</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-ja.svg" style="width: 7.5em; height: 1.25em;"> <img class="mw-logo-tagline" alt="" src="/static/images/mobile/copyright/wikipedia-tagline-ja.svg" width="100" height="14" style="width: 6.25em; height: 0.875em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/%E7%89%B9%E5%88%A5:%E6%A4%9C%E7%B4%A2" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Wikipedia内を検索 [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>検索</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Wikipedia内を検索" aria-label="Wikipedia内を検索" autocapitalize="sentences" title="Wikipedia内を検索 [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="特別:検索"> </div> <button class="cdx-button cdx-search-input__end-button">検索</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="個人用ツール"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="表示"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="ページのフォントサイズ、幅、色の外観を変更する" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="表示" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">表示</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_ja.wikipedia.org&amp;uselang=ja" class=""><span>寄付</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=%E7%89%B9%E5%88%A5:%E3%82%A2%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88%E4%BD%9C%E6%88%90&amp;returnto=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="アカウントを作成してログインすることをお勧めしますが、必須ではありません" class=""><span>アカウント作成</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=%E7%89%B9%E5%88%A5:%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3&amp;returnto=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="ログインすることを推奨します。ただし、必須ではありません。 [o]" accesskey="o" class=""><span>ログイン</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="その他の操作" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="個人用ツール" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">個人用ツール</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="利用者メニュー" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_ja.wikipedia.org&amp;uselang=ja"><span>寄付</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=%E7%89%B9%E5%88%A5:%E3%82%A2%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88%E4%BD%9C%E6%88%90&amp;returnto=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="アカウントを作成してログインすることをお勧めしますが、必須ではありません"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>アカウント作成</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=%E7%89%B9%E5%88%A5:%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3&amp;returnto=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="ログインすることを推奨します。ただし、必須ではありません。 [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>ログイン</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> ログアウトした編集者のページ <a href="/wiki/Wikipedia:%E3%82%A6%E3%82%A3%E3%82%AD%E3%83%9A%E3%83%87%E3%82%A3%E3%82%A2%E3%81%B8%E3%82%88%E3%81%86%E3%81%93%E3%81%9D" aria-label="編集の詳細"><span>もっと詳しく</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E8%87%AA%E5%88%86%E3%81%AE%E6%8A%95%E7%A8%BF%E8%A8%98%E9%8C%B2" title="このIPアドレスからなされた編集の一覧 [y]" accesskey="y"><span>投稿記録</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E3%83%88%E3%83%BC%E3%82%AF%E3%83%9A%E3%83%BC%E3%82%B8" title="このIPアドレスからなされた編集についての議論 [n]" accesskey="n"><span>トーク</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="サイト"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="目次" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">目次</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">サイドバーに移動</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">非表示</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">ページ先頭</div> </a> </li> <li id="toc-概要" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#概要"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>概要</span> </div> </a> <ul id="toc-概要-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-歴史" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#歴史"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>歴史</span> </div> </a> <ul id="toc-歴史-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-特徴" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#特徴"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>特徴</span> </div> </a> <button aria-controls="toc-特徴-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>特徴サブセクションを切り替えます</span> </button> <ul id="toc-特徴-sublist" class="vector-toc-list"> <li id="toc-論理と制御" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#論理と制御"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.1</span> <span>論理と制御</span> </div> </a> <ul id="toc-論理と制御-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-問題解決" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#問題解決"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.2</span> <span>問題解決</span> </div> </a> <ul id="toc-問題解決-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-失敗による否定" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#失敗による否定"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.3</span> <span>失敗による否定</span> </div> </a> <ul id="toc-失敗による否定-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-知識表現" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#知識表現"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.4</span> <span>知識表現</span> </div> </a> <ul id="toc-知識表現-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Prolog" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Prolog"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Prolog</span> </div> </a> <ul id="toc-Prolog-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-派生分野" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#派生分野"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>派生分野</span> </div> </a> <button aria-controls="toc-派生分野-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>派生分野サブセクションを切り替えます</span> </button> <ul id="toc-派生分野-sublist" class="vector-toc-list"> <li id="toc-並行論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#並行論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.1</span> <span>並行論理プログラミング</span> </div> </a> <ul id="toc-並行論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-制約論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#制約論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.2</span> <span>制約論理プログラミング</span> </div> </a> <ul id="toc-制約論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-高階論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#高階論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.3</span> <span>高階論理プログラミング</span> </div> </a> <ul id="toc-高階論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-関数論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#関数論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.4</span> <span>関数論理プログラミング</span> </div> </a> <ul id="toc-関数論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-オブジェクト指向論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#オブジェクト指向論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.5</span> <span>オブジェクト指向論理プログラミング</span> </div> </a> <ul id="toc-オブジェクト指向論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-線形論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#線形論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.6</span> <span>線形論理プログラミング</span> </div> </a> <ul id="toc-線形論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-帰納論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#帰納論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.7</span> <span>帰納論理プログラミング</span> </div> </a> <ul id="toc-帰納論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-仮説論理プログラミング" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#仮説論理プログラミング"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.8</span> <span>仮説論理プログラミング</span> </div> </a> <ul id="toc-仮説論理プログラミング-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-適用分野" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#適用分野"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>適用分野</span> </div> </a> <ul id="toc-適用分野-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-関連項目" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#関連項目"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>関連項目</span> </div> </a> <ul id="toc-関連項目-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-脚注" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#脚注"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>脚注</span> </div> </a> <ul id="toc-脚注-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-参考文献" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#参考文献"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>参考文献</span> </div> </a> <ul id="toc-参考文献-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-外部リンク" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#外部リンク"> <div class="vector-toc-text"> <span class="vector-toc-numb">10</span> <span>外部リンク</span> </div> </a> <ul id="toc-外部リンク-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="目次" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="目次の表示・非表示を切り替え" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">目次の表示・非表示を切り替え</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">論理プログラミング</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="特定の記事の別の言語版に移動します。 利用可能な言語36件" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-36" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">36の言語版</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D8%A8%D8%B1%D9%85%D8%AC%D8%A9_%D9%85%D9%86%D8%B7%D9%82%D9%8A%D8%A9" title="アラビア語: برمجة منطقية" lang="ar" hreflang="ar" data-title="برمجة منطقية" data-language-autonym="العربية" data-language-local-name="アラビア語" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-bg mw-list-item"><a href="https://bg.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%B8%D1%80%D0%B0%D0%BD%D0%B5" title="ブルガリア語: Логическо програмиране" lang="bg" hreflang="bg" data-title="Логическо програмиране" data-language-autonym="Български" data-language-local-name="ブルガリア語" class="interlanguage-link-target"><span>Български</span></a></li><li class="interlanguage-link interwiki-bn mw-list-item"><a href="https://bn.wikipedia.org/wiki/%E0%A6%AF%E0%A7%81%E0%A6%95%E0%A7%8D%E0%A6%A4%E0%A6%BF%E0%A6%AD%E0%A6%BF%E0%A6%A4%E0%A7%8D%E0%A6%A4%E0%A6%BF%E0%A6%95_%E0%A6%AA%E0%A7%8D%E0%A6%B0%E0%A7%8B%E0%A6%97%E0%A7%8D%E0%A6%B0%E0%A6%BE%E0%A6%AE%E0%A6%BF%E0%A6%82" title="ベンガル語: যুক্তিভিত্তিক প্রোগ্রামিং" lang="bn" hreflang="bn" data-title="যুক্তিভিত্তিক প্রোগ্রামিং" data-language-autonym="বাংলা" data-language-local-name="ベンガル語" class="interlanguage-link-target"><span>বাংলা</span></a></li><li class="interlanguage-link interwiki-bs mw-list-item"><a href="https://bs.wikipedia.org/wiki/Logi%C4%8Dko_programiranje" title="ボスニア語: Logičko programiranje" lang="bs" hreflang="bs" data-title="Logičko programiranje" data-language-autonym="Bosanski" data-language-local-name="ボスニア語" class="interlanguage-link-target"><span>Bosanski</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Programaci%C3%B3_l%C3%B2gica" title="カタロニア語: Programació lògica" lang="ca" hreflang="ca" data-title="Programació lògica" data-language-autonym="Català" data-language-local-name="カタロニア語" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/Logick%C3%A9_programov%C3%A1n%C3%AD" title="チェコ語: Logické programování" lang="cs" hreflang="cs" data-title="Logické programování" data-language-autonym="Čeština" data-language-local-name="チェコ語" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Logische_Programmierung" title="ドイツ語: Logische Programmierung" lang="de" hreflang="de" data-title="Logische Programmierung" data-language-autonym="Deutsch" data-language-local-name="ドイツ語" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-en mw-list-item"><a href="https://en.wikipedia.org/wiki/Logic_programming" title="英語: Logic programming" lang="en" hreflang="en" data-title="Logic programming" data-language-autonym="English" data-language-local-name="英語" class="interlanguage-link-target"><span>English</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/Programaci%C3%B3n_l%C3%B3gica" title="スペイン語: Programación lógica" lang="es" hreflang="es" data-title="Programación lógica" data-language-autonym="Español" data-language-local-name="スペイン語" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-et mw-list-item"><a href="https://et.wikipedia.org/wiki/Loogiline_programmeerimine" title="エストニア語: Loogiline programmeerimine" lang="et" hreflang="et" data-title="Loogiline programmeerimine" data-language-autonym="Eesti" data-language-local-name="エストニア語" class="interlanguage-link-target"><span>Eesti</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C_%D9%85%D9%86%D8%B7%D9%82%DB%8C" title="ペルシア語: برنامه‌نویسی منطقی" lang="fa" hreflang="fa" data-title="برنامه‌نویسی منطقی" data-language-autonym="فارسی" data-language-local-name="ペルシア語" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/Logiikkapohjainen_ohjelmointi" title="フィンランド語: Logiikkapohjainen ohjelmointi" lang="fi" hreflang="fi" data-title="Logiikkapohjainen ohjelmointi" data-language-autonym="Suomi" data-language-local-name="フィンランド語" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Programmation_logique" title="フランス語: Programmation logique" lang="fr" hreflang="fr" data-title="Programmation logique" data-language-autonym="Français" data-language-local-name="フランス語" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ga mw-list-item"><a href="https://ga.wikipedia.org/wiki/R%C3%ADomhchl%C3%A1r%C3%BA_loighce" title="アイルランド語: Ríomhchlárú loighce" lang="ga" hreflang="ga" data-title="Ríomhchlárú loighce" data-language-autonym="Gaeilge" data-language-local-name="アイルランド語" class="interlanguage-link-target"><span>Gaeilge</span></a></li><li class="interlanguage-link interwiki-gl mw-list-item"><a href="https://gl.wikipedia.org/wiki/Programaci%C3%B3n_l%C3%B3xica" title="ガリシア語: Programación lóxica" lang="gl" hreflang="gl" data-title="Programación lóxica" data-language-autonym="Galego" data-language-local-name="ガリシア語" class="interlanguage-link-target"><span>Galego</span></a></li><li class="interlanguage-link interwiki-he mw-list-item"><a href="https://he.wikipedia.org/wiki/%D7%AA%D7%9B%D7%A0%D7%95%D7%AA_%D7%9C%D7%95%D7%92%D7%99" title="ヘブライ語: תכנות לוגי" lang="he" hreflang="he" data-title="תכנות לוגי" data-language-autonym="עברית" data-language-local-name="ヘブライ語" class="interlanguage-link-target"><span>עברית</span></a></li><li class="interlanguage-link interwiki-hr mw-list-item"><a href="https://hr.wikipedia.org/wiki/Logi%C4%8Dko_programiranje" title="クロアチア語: Logičko programiranje" lang="hr" hreflang="hr" data-title="Logičko programiranje" data-language-autonym="Hrvatski" data-language-local-name="クロアチア語" class="interlanguage-link-target"><span>Hrvatski</span></a></li><li class="interlanguage-link interwiki-io mw-list-item"><a href="https://io.wikipedia.org/wiki/Logikala_programigado" title="イド語: Logikala programigado" lang="io" hreflang="io" data-title="Logikala programigado" data-language-autonym="Ido" data-language-local-name="イド語" class="interlanguage-link-target"><span>Ido</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/Programmazione_logica" title="イタリア語: Programmazione logica" lang="it" hreflang="it" data-title="Programmazione logica" data-language-autonym="Italiano" data-language-local-name="イタリア語" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EB%85%BC%EB%A6%AC%ED%98%95_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D" title="韓国語: 논리형 프로그래밍" lang="ko" hreflang="ko" data-title="논리형 프로그래밍" data-language-autonym="한국어" data-language-local-name="韓国語" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-ms mw-list-item"><a href="https://ms.wikipedia.org/wiki/Pengaturcaraan_logik" title="マレー語: Pengaturcaraan logik" lang="ms" hreflang="ms" data-title="Pengaturcaraan logik" data-language-autonym="Bahasa Melayu" data-language-local-name="マレー語" class="interlanguage-link-target"><span>Bahasa Melayu</span></a></li><li class="interlanguage-link interwiki-nl mw-list-item"><a href="https://nl.wikipedia.org/wiki/Logisch_programmeren" title="オランダ語: Logisch programmeren" lang="nl" hreflang="nl" data-title="Logisch programmeren" data-language-autonym="Nederlands" data-language-local-name="オランダ語" class="interlanguage-link-target"><span>Nederlands</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Programowanie_logiczne" title="ポーランド語: Programowanie logiczne" lang="pl" hreflang="pl" data-title="Programowanie logiczne" data-language-autonym="Polski" data-language-local-name="ポーランド語" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_l%C3%B3gica" title="ポルトガル語: Programação lógica" lang="pt" hreflang="pt" data-title="Programação lógica" data-language-autonym="Português" data-language-local-name="ポルトガル語" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" title="ロシア語: Логическое программирование" lang="ru" hreflang="ru" data-title="Логическое программирование" data-language-autonym="Русский" data-language-local-name="ロシア語" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-rue mw-list-item"><a href="https://rue.wikipedia.org/wiki/%D0%9B%D0%BE%D2%91%D1%96%D1%87%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D2%91%D1%80%D0%B0%D0%BC%D0%BE%D0%B2%D0%B0%D0%BD%D1%8F" title="ルシン語: Лоґічне проґрамованя" lang="rue" hreflang="rue" data-title="Лоґічне проґрамованя" data-language-autonym="Русиньскый" data-language-local-name="ルシン語" class="interlanguage-link-target"><span>Русиньскый</span></a></li><li class="interlanguage-link interwiki-simple mw-list-item"><a href="https://simple.wikipedia.org/wiki/Logic_programming" title="シンプル英語: Logic programming" lang="en-simple" hreflang="en-simple" data-title="Logic programming" data-language-autonym="Simple English" data-language-local-name="シンプル英語" class="interlanguage-link-target"><span>Simple English</span></a></li><li class="interlanguage-link interwiki-sq mw-list-item"><a href="https://sq.wikipedia.org/wiki/Programimi_logjik" title="アルバニア語: Programimi logjik" lang="sq" hreflang="sq" data-title="Programimi logjik" data-language-autonym="Shqip" data-language-local-name="アルバニア語" class="interlanguage-link-target"><span>Shqip</span></a></li><li class="interlanguage-link interwiki-sr mw-list-item"><a href="https://sr.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D1%87%D0%BA%D0%BE_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%B8%D1%80%D0%B0%D1%9A%D0%B5" title="セルビア語: Логичко програмирање" lang="sr" hreflang="sr" data-title="Логичко програмирање" data-language-autonym="Српски / srpski" data-language-local-name="セルビア語" class="interlanguage-link-target"><span>Српски / srpski</span></a></li><li class="interlanguage-link interwiki-sv mw-list-item"><a href="https://sv.wikipedia.org/wiki/Logikprogrammering" title="スウェーデン語: Logikprogrammering" lang="sv" hreflang="sv" data-title="Logikprogrammering" data-language-autonym="Svenska" data-language-local-name="スウェーデン語" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-th mw-list-item"><a href="https://th.wikipedia.org/wiki/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%82%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B9%82%E0%B8%9B%E0%B8%A3%E0%B9%81%E0%B8%81%E0%B8%A3%E0%B8%A1%E0%B9%80%E0%B8%8A%E0%B8%B4%E0%B8%87%E0%B8%95%E0%B8%A3%E0%B8%A3%E0%B8%81%E0%B8%B0" title="タイ語: การเขียนโปรแกรมเชิงตรรกะ" lang="th" hreflang="th" data-title="การเขียนโปรแกรมเชิงตรรกะ" data-language-autonym="ไทย" data-language-local-name="タイ語" class="interlanguage-link-target"><span>ไทย</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/Mant%C4%B1k_programlama" title="トルコ語: Mantık programlama" lang="tr" hreflang="tr" data-title="Mantık programlama" data-language-autonym="Türkçe" data-language-local-name="トルコ語" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D1%96%D1%87%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F" title="ウクライナ語: Логічне програмування" lang="uk" hreflang="uk" data-title="Логічне програмування" data-language-autonym="Українська" data-language-local-name="ウクライナ語" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/L%E1%BA%ADp_tr%C3%ACnh_logic" title="ベトナム語: Lập trình logic" lang="vi" hreflang="vi" data-title="Lập trình logic" data-language-autonym="Tiếng Việt" data-language-local-name="ベトナム語" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/%E9%82%8F%E8%BC%AF%E7%B7%A8%E7%A8%8B" title="中国語: 邏輯編程" lang="zh" hreflang="zh" data-title="邏輯編程" data-language-autonym="中文" data-language-local-name="中国語" class="interlanguage-link-target"><span>中文</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/%E9%82%8F%E8%BC%AF%E7%B7%A8%E7%A8%8B" title="広東語: 邏輯編程" lang="yue" hreflang="yue" data-title="邏輯編程" data-language-autonym="粵語" data-language-local-name="広東語" class="interlanguage-link-target"><span>粵語</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q275603#sitelinks-wikipedia" title="言語間リンクを編集" class="wbc-editpage">リンクを編集</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="名前空間"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="本文を閲覧 [c]" accesskey="c"><span>ページ</span></a></li><li id="ca-talk" class="new vector-tab-noicon mw-list-item"><a href="/w/index.php?title=%E3%83%8E%E3%83%BC%E3%83%88:%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;redlink=1" rel="discussion" class="new" title="「本文ページについての議論」 (存在しないページ) [t]" accesskey="t"><span>ノート</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="別の言語に切り替える" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">日本語</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="表示"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0"><span>閲覧</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit" title="このページのソースコードを編集する [e]" accesskey="e"><span>編集</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=history" title="このページの過去の版 [h]" accesskey="h"><span>履歴表示</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="ページツール"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="ツール" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">ツール</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">ツール</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">サイドバーに移動</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">非表示</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="その他の操作" > <div class="vector-menu-heading"> 操作 </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0"><span>閲覧</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit" title="このページのソースコードを編集する [e]" accesskey="e"><span>編集</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=history"><span>履歴表示</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> 全般 </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E3%83%AA%E3%83%B3%E3%82%AF%E5%85%83/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="ここにリンクしている全ウィキページの一覧 [j]" accesskey="j"><span>リンク元</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E9%96%A2%E9%80%A3%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AE%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" rel="nofollow" title="このページからリンクしているページの最近の更新 [k]" accesskey="k"><span>関連ページの更新状況</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Wikipedia:%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89" title="ファイルをアップロードする [u]" accesskey="u"><span>ファイルをアップロード</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/%E7%89%B9%E5%88%A5:%E7%89%B9%E5%88%A5%E3%83%9A%E3%83%BC%E3%82%B8%E4%B8%80%E8%A6%A7" title="特別ページの一覧 [q]" accesskey="q"><span>特別ページ</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;oldid=89962034" title="このページのこの版への固定リンク"><span>この版への固定リンク</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=info" title="このページについての詳細情報"><span>ページ情報</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=%E7%89%B9%E5%88%A5:%E3%81%93%E3%81%AE%E3%83%9A%E3%83%BC%E3%82%B8%E3%82%92%E5%BC%95%E7%94%A8&amp;page=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;id=89962034&amp;wpFormIdentifier=titleform" title="このページの引用方法"><span>このページを引用</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=%E7%89%B9%E5%88%A5:UrlShortener&amp;url=https%3A%2F%2Fja.wikipedia.org%2Fwiki%2F%25E8%25AB%2596%25E7%2590%2586%25E3%2583%2597%25E3%2583%25AD%25E3%2582%25B0%25E3%2583%25A9%25E3%2583%259F%25E3%2583%25B3%25E3%2582%25B0"><span>短縮URLを取得する</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=%E7%89%B9%E5%88%A5:QrCode&amp;url=https%3A%2F%2Fja.wikipedia.org%2Fwiki%2F%25E8%25AB%2596%25E7%2590%2586%25E3%2583%2597%25E3%2583%25AD%25E3%2582%25B0%25E3%2583%25A9%25E3%2583%259F%25E3%2583%25B3%25E3%2582%25B0"><span>QRコードをダウンロード</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> 印刷/書き出し </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-create_a_book" class="mw-list-item"><a href="/w/index.php?title=%E7%89%B9%E5%88%A5:%E3%83%96%E3%83%83%E3%82%AF&amp;bookcmd=book_creator&amp;referer=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0"><span>ブックの新規作成</span></a></li><li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=%E7%89%B9%E5%88%A5:DownloadAsPdf&amp;page=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=show-download-screen"><span>PDF 形式でダウンロード</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;printable=yes" title="このページの印刷用ページ [p]" accesskey="p"><span>印刷用バージョン</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> 他のプロジェクト </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Category:Logic_programming" hreflang="en"><span>コモンズ</span></a></li><li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q275603" title="関連付けられたデータリポジトリ項目へのリンク [g]" accesskey="g"><span>ウィキデータ項目</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="ページツール"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="表示"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">表示</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">サイドバーに移動</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">非表示</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">出典: フリー百科事典『ウィキペディア(Wikipedia)』</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="ja" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r101384370">.mw-parser-output .sidebar{width:auto;float:right;clear:right;margin:0.5em 0 1em 1em;background:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);padding:0.2em;text-align:center;line-height:1.4em;font-size:88%;border-collapse:collapse;display:table}body.skin-minerva .mw-parser-output .sidebar{display:table!important;float:right!important;margin:0.5em 0 1em 1em!important}.mw-parser-output .sidebar-subgroup{width:100%;margin:0;border-spacing:0}.mw-parser-output .sidebar-left{float:left;clear:left;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-none{float:none;clear:both;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-outer-title{padding:0 0.4em 0.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .sidebar-top-image{padding:0.4em}.mw-parser-output .sidebar-top-caption,.mw-parser-output .sidebar-pretitle-with-top-image,.mw-parser-output .sidebar-caption{padding:0.2em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-pretitle{padding:0.4em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-title,.mw-parser-output .sidebar-title-with-pretitle{padding:0.2em 0.8em;font-size:145%;line-height:1.2em}.mw-parser-output .sidebar-title-with-pretitle{padding:0 0.4em}.mw-parser-output .sidebar-image{padding:0.2em 0.4em 0.4em}.mw-parser-output .sidebar-heading{padding:0.1em 0.4em}.mw-parser-output .sidebar-content{padding:0 0.5em 0.4em}.mw-parser-output .sidebar-content-with-subgroup{padding:0.1em 0.4em 0.2em}.mw-parser-output .sidebar-above,.mw-parser-output .sidebar-below{padding:0.3em 0.8em;font-weight:bold}.mw-parser-output .sidebar-collapse .sidebar-above,.mw-parser-output .sidebar-collapse .sidebar-below{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.mw-parser-output .sidebar-navbar{text-align:right;font-size:75%;padding:0 0.4em 0.4em}.mw-parser-output .sidebar-list-title{padding:0 0.4em;text-align:left;font-weight:bold;line-height:1.6em;font-size:105%}.mw-parser-output .sidebar-list-title-c{padding:0 0.4em;text-align:center;margin:0 3.3em}@media(max-width:720px){body.mediawiki .mw-parser-output .sidebar{width:100%!important;clear:both;float:none!important;margin-left:0!important;margin-right:0!important}}</style><table class="sidebar nomobile nowraplinks"><tbody><tr><th class="sidebar-heading" style="background:#cedff2;"> <a href="/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%BB%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0" class="mw-redirect" title="プログラミング・パラダイム">プログラミング・パラダイム</a></th></tr><tr><td class="sidebar-content" style="text-align:left; background:#f5faff;"> <p><a href="/wiki/%E5%91%BD%E4%BB%A4%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="命令型プログラミング">命令型プログラミング</a> </p> <ul><li><a href="/wiki/%E6%89%8B%E7%B6%9A%E3%81%8D%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="手続き型プログラミング">手続き型プログラミング</a> <ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%A9%E3%83%BC%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;redlink=1" class="new" title="「モジュラープログラミング」 (存在しないページ)">モジュラープログラミング</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Modular_programming" class="extiw" title="en:Modular programming">英語版</a>)</span></span></li></ul></li> <li><a href="/wiki/%E6%A7%8B%E9%80%A0%E5%8C%96%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="構造化プログラミング">構造化プログラミング</a></li> <li><a href="/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="オブジェクト指向プログラミング">オブジェクト指向プログラミング</a> <ul><li><a href="/wiki/%E3%82%AF%E3%83%A9%E3%82%B9%E3%83%99%E3%83%BC%E3%82%B9" title="クラスベース">クラスベース</a></li> <li><a href="/wiki/%E3%83%97%E3%83%AD%E3%83%88%E3%82%BF%E3%82%A4%E3%83%97%E3%83%99%E3%83%BC%E3%82%B9" title="プロトタイプベース">プロトタイプベース</a></li> <li><a href="/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91" title="オブジェクト指向">メッセージング</a></li> <li><a href="/wiki/%E3%82%A2%E3%82%AF%E3%82%BF%E3%83%BC%E3%83%A2%E3%83%87%E3%83%AB" title="アクターモデル">アクターモデル</a></li> <li><a href="/wiki/%E3%82%A2%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91" class="mw-redirect" title="アスペクト指向">アスペクト指向</a></li></ul></li></ul> <p><a href="/wiki/%E5%AE%A3%E8%A8%80%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="宣言型プログラミング">宣言型プログラミング</a> </p> <ul><li><a href="/wiki/%E9%96%A2%E6%95%B0%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="関数型プログラミング">関数型プログラミング</a> <ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E7%B4%94%E7%B2%8B%E9%96%A2%E6%95%B0%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;redlink=1" class="new" title="「純粋関数型プログラミング」 (存在しないページ)">純粋関数型プログラミング</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Purely_functional_programming" class="extiw" title="en:Purely functional programming">英語版</a>)</span></span></li></ul></li> <li><a class="mw-selflink selflink">論理プログラミング</a> <ul><li><a href="/wiki/%E4%B8%A6%E8%A1%8C%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="並行論理プログラミング">並行論理プログラミング</a></li> <li><a href="/wiki/%E5%88%B6%E7%B4%84%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="制約論理プログラミング">制約論理プログラミング</a> <ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E8%A7%A3%E9%9B%86%E5%90%88%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;redlink=1" class="new" title="「解集合プログラミング」 (存在しないページ)">解集合プログラミング</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Answer_set_programming" class="extiw" title="en:Answer set programming">英語版</a>)</span></span></li></ul></li> <li><a href="/wiki/%E5%B8%B0%E7%B4%8D%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="帰納プログラミング">帰納プログラミング</a></li> <li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E4%BB%AE%E8%AA%AC%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;redlink=1" class="new" title="「仮説論理プログラミング」 (存在しないページ)">仮説論理プログラミング</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Abductive_logic_programming" class="extiw" title="en:Abductive logic programming">英語版</a>)</span></span></li></ul></li> <li><a href="/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%95%E3%83%AD%E3%83%BC%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="データフロープログラミング">データフロープログラミング</a> <ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%AA%E3%82%A2%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;redlink=1" class="new" title="「リアクティブプログラミング」 (存在しないページ)">リアクティブプログラミング</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Reactive_programming" class="extiw" title="en:Reactive programming">英語版</a>)</span></span></li></ul></li> <li><a href="/wiki/%E4%B8%A6%E8%A1%8C%E5%88%B6%E7%B4%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="並行制約プログラミング">並行制約プログラミング</a></li></ul> <p><a href="/wiki/%E3%83%9E%E3%83%AB%E3%83%81%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="マルチパラダイムプログラミング言語">マルチパラダイム</a> </p> <ul><li><a href="/wiki/%E3%82%B8%E3%82%A7%E3%83%8D%E3%83%AA%E3%83%83%E3%82%AF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="ジェネリックプログラミング">ジェネリックプログラミング</a></li> <li><a href="/wiki/%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88%E9%A7%86%E5%8B%95%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="イベント駆動型プログラミング">イベント駆動型プログラミング</a></li> <li><a href="/wiki/%E5%8B%95%E7%9A%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="動的プログラミング言語">動的プログラミング</a></li> <li><a href="/wiki/%E4%B8%A6%E8%A1%8C%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" class="mw-redirect" title="並行プログラミング">並行プログラミング</a></li> <li><a href="/wiki/%E5%88%B6%E7%B4%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="制約プログラミング">制約プログラミング</a></li> <li><a href="/wiki/%E3%83%A1%E3%82%BF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="メタプログラミング">メタプログラミング</a> <ul><li><a href="/wiki/%E8%87%AA%E5%8B%95%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="自動プログラミング">自動プログラミング</a></li> <li><a href="/wiki/%E5%B8%B0%E7%B4%8D%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="帰納プログラミング">帰納プログラミング</a></li> <li><a href="/wiki/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%83%A1%E3%82%BF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="テンプレートメタプログラミング">テンプレートメタプログラミング</a></li> <li><a href="/wiki/%E3%83%AA%E3%83%95%E3%83%AC%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3_(%E6%83%85%E5%A0%B1%E5%B7%A5%E5%AD%A6)" title="リフレクション (情報工学)">リフレクティブプログラミング</a></li> <li><a href="/wiki/%E3%83%9E%E3%82%AF%E3%83%AD_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E7%94%A8%E8%AA%9E)" title="マクロ (コンピュータ用語)">マクロ</a></li></ul></li> <li><a href="/wiki/%E5%A5%91%E7%B4%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="契約プログラミング">契約プログラミング</a></li> <li><a href="/wiki/%E3%82%A4%E3%83%B3%E3%83%86%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%AB%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="インテンショナルプログラミング">インテンショナルプログラミング</a></li> <li><a href="/wiki/%E6%96%87%E8%8A%B8%E7%9A%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="文芸的プログラミング">文芸的プログラミング</a></li> <li><a href="/wiki/%E9%87%8F%E5%AD%90%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="量子プログラミング言語">量子プログラミング</a></li></ul></td> </tr><tr><td class="sidebar-navbar"><style data-mw-deduplicate="TemplateStyles:r99966302">.mw-parser-output .hlist ul,.mw-parser-output .hlist ol{padding-left:0}.mw-parser-output .hlist li,.mw-parser-output .hlist dd,.mw-parser-output .hlist dt{margin-right:0;display:inline-block;white-space:nowrap}.mw-parser-output .hlist dt:after,.mw-parser-output .hlist dd:after,.mw-parser-output .hlist li:after{white-space:normal}.mw-parser-output .hlist li:after,.mw-parser-output .hlist dd:after{content:" ·\a0 ";font-weight:bold}.mw-parser-output .hlist dt:after{content:": "}.mw-parser-output .hlist-pipe dd:after,.mw-parser-output .hlist-pipe li:after{content:" |\a0 ";font-weight:normal}.mw-parser-output .hlist-hyphen dd:after,.mw-parser-output .hlist-hyphen li:after{content:" -\a0 ";font-weight:normal}.mw-parser-output .hlist-comma dd:after,.mw-parser-output .hlist-comma li:after{content:"、";font-weight:normal}.mw-parser-output .hlist-slash dd:after,.mw-parser-output .hlist-slash li:after{content:" /\a0 ";font-weight:normal}.mw-parser-output .hlist dd:last-child:after,.mw-parser-output .hlist dt:last-child:after,.mw-parser-output .hlist li:last-child:after{content:none}.mw-parser-output .hlist dd dd:first-child:before,.mw-parser-output .hlist dd dt:first-child:before,.mw-parser-output .hlist dd li:first-child:before,.mw-parser-output .hlist dt dd:first-child:before,.mw-parser-output .hlist dt dt:first-child:before,.mw-parser-output .hlist dt li:first-child:before,.mw-parser-output .hlist li dd:first-child:before,.mw-parser-output .hlist li dt:first-child:before,.mw-parser-output .hlist li li:first-child:before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child:after,.mw-parser-output .hlist dd dt:last-child:after,.mw-parser-output .hlist dd li:last-child:after,.mw-parser-output .hlist dt dd:last-child:after,.mw-parser-output .hlist dt dt:last-child:after,.mw-parser-output .hlist dt li:last-child:after,.mw-parser-output .hlist li dd:last-child:after,.mw-parser-output .hlist li dt:last-child:after,.mw-parser-output .hlist li li:last-child:after{content:")\a0 ";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li:before{content:" "counter(listitem)" ";white-space:nowrap}.mw-parser-output .hlist dd ol>li:first-child:before,.mw-parser-output .hlist dt ol>li:first-child:before,.mw-parser-output .hlist li ol>li:first-child:before{content:" ("counter(listitem)" "}</style><style data-mw-deduplicate="TemplateStyles:r96787822">.mw-parser-output .navbar{display:inline;font-size:75%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}.mw-parser-output .infobox .navbar{font-size:88%}.mw-parser-output .navbox .navbar{display:block;font-size:88%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%BB%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0" title="Template:プログラミング・パラダイム"><abbr title="参照先のページを表示します。">表</abbr></a></li><li class="nv-talk"><a href="/w/index.php?title=Template%E2%80%90%E3%83%8E%E3%83%BC%E3%83%88:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%BB%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0&amp;action=edit&amp;redlink=1" class="new" title="「Template‐ノート:プログラミング・パラダイム」 (存在しないページ)"><abbr title="参照先のノートを表示します。">話</abbr></a></li><li class="nv-edit"><a class="external text" href="https://ja.wikipedia.org/w/index.php?title=Template:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%BB%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0&amp;action=edit"><abbr title="参照先のページを編集します。">編</abbr></a></li><li class="nv-hist"><a class="external text" href="https://ja.wikipedia.org/w/index.php?title=Template:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%BB%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0&amp;action=history"><abbr title="参照先のページの履歴を表示します。">歴</abbr></a></li></ul></div></td></tr></tbody></table> <p><b>論理プログラミング</b>(Logic Programming)とは、<a href="/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="数理論理学">数理論理学</a>(記号論理学)を基礎にした<a href="/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0" title="プログラミングパラダイム">プログラミングパラダイム</a>、または<a href="/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="数理論理学">数理論理学</a>の<a href="/wiki/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" class="mw-redirect" title="コンピュータプログラミング">コンピュータプログラミング</a>への応用である。<a href="/wiki/%E5%BD%A2%E5%BC%8F%E8%AB%96%E7%90%86%E5%AD%A6" title="形式論理学">形式論理</a>の<a href="/wiki/%E8%AB%96%E7%90%86%E5%BC%8F_(%E6%95%B0%E5%AD%A6)" title="論理式 (数学)">論理式</a>を<a href="/wiki/%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89" title="ソースコード">ソースコード</a>の書式に投影することが基本になる。<a href="/wiki/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" class="mw-redirect" title="コンピュータプログラミング">プログラミング</a>に適用するための幅広い解釈が加えられており、研究対象としての論理プログラミングは非常に多様である。 </p><p>より一般的に受け入れられている論理プログラミングは、<a href="/wiki/%E8%BF%B0%E8%AA%9E%E8%AB%96%E7%90%86" title="述語論理">述語論理</a>を基礎にし、問題領域の事実と規則を論理式モデル書式で表現して(ロジック)<a href="/wiki/%E9%9D%9E%E6%B1%BA%E5%AE%9A%E6%80%A7%E3%83%81%E3%83%A5%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%9E%E3%82%B7%E3%83%B3" title="非決定性チューリングマシン">非決定性</a>の<a href="/wiki/%E6%BC%94%E7%B9%B9" title="演繹">演繹</a>の<a href="/wiki/%E5%B0%8E%E5%87%BA%E5%8E%9F%E7%90%86" title="導出原理">導出原理</a>を用いる(コントロール)というものである。この<a href="/wiki/%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0" title="アルゴリズム">アルゴリズム</a>スタイルで最も普及した論理プログラミング言語は「<a href="/wiki/Prolog" title="Prolog">Prolog</a>」である。 </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="概要"><span id=".E6.A6.82.E8.A6.81"></span>概要</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=1" title="節を編集: 概要"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>論理プログラミングの基本は<a href="/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="数理論理学">数理論理学</a>のスタイルをコンピュータのプログラミングに持ち込むことにある。数学者や哲学者は論理を理論構築のツールとして選んだ。多くの問題は理論として自然に表現される。解決すべき問題とは、新たな仮説が既存の理論で説明できるかどうかを問うことと等しい。論理は問題が真か偽かを証明する方法を提供する。証明構築過程は明確であり、論理は問題に答える信頼できる方法と見なされている。論理プログラミングシステムはこの過程を自動化する。<a href="/wiki/%E4%BA%BA%E5%B7%A5%E7%9F%A5%E8%83%BD" title="人工知能">人工知能</a>は論理プログラミングの開発に重要な影響を与えた。 </p><p>この観点での論理プログラミングは、<a href="/wiki/%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%BB%E3%83%9E%E3%83%83%E3%82%AB%E3%83%BC%E3%82%B7%E3%83%BC" title="ジョン・マッカーシー">ジョン・マッカーシー</a>[1958]の<i>advice taker</i>の提案にまでさかのぼることができる。より一般的に受け入られている狭い意味での論理プログラミングは、述語論理式を非決定的なプログラミング言語とみなすもので、述語論理式は宣言的であると同時に手続き的にも解釈される。 </p><p>論理をベースにしたプログラミング言語として1971年に <a href="/wiki/Planner" title="Planner">Planner</a> のサブセットである Micro-Planner が開発された。表明とゴールからパターンによる手続き的計画を呼び出す機能を備えていたが、十分に形式化されていなかった<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup>。Plannerと独立してより論理を重視した <a href="/wiki/Prolog" title="Prolog">Prolog</a> が開発され、コワルスキーにより述語論理式(<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>)のプログラム的解釈の考え方と結び付き、論理プログラミングの基本的な考え方が確立した<sup id="cite_ref-#1_2-0" class="reference"><a href="#cite_note-#1-2"><span class="cite-bracket">&#91;</span>2<span class="cite-bracket">&#93;</span></a></sup>。Planner からの派生で、プログラミング言語 Poplerが開発された。Prolog からの派生言語としては、Mercury、Visual Prolog、<a href="/wiki/Oz_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E)" title="Oz (プログラミング言語)">Oz</a>、Fril などがある。バックトラッキングを使用しない<a href="/wiki/%E4%B8%A6%E8%A1%8C%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="並行論理プログラミング">並行論理プログラミング</a>言語としてProlog からの派生した<a href="/wiki/Concurrent_Prolog" title="Concurrent Prolog">Concurrent Prolog</a>、<a href="/wiki/PARLOG" title="PARLOG">PARLOG</a>、<a href="/wiki/Guarded_Horn_Clauses" title="Guarded Horn Clauses">GHC</a>、<a href="/wiki/KL1" title="KL1">KL1</a>などの各種言語(Shapiro [1989] に調査結果がある)がある。 </p><p><b>数理論理学適用の限界</b> </p><p>ジョン・マッカーシーは数理論理学をコンピュータシステムの認識論の基礎として利用することを提案した。<a href="/wiki/%E3%83%9E%E3%82%B5%E3%83%81%E3%83%A5%E3%83%BC%E3%82%BB%E3%83%83%E3%83%84%E5%B7%A5%E7%A7%91%E5%A4%A7%E5%AD%A6" title="マサチューセッツ工科大学">MIT</a>では<a href="/wiki/%E3%83%9E%E3%83%BC%E3%83%93%E3%83%B3%E3%83%BB%E3%83%9F%E3%83%B3%E3%82%B9%E3%82%AD%E3%83%BC" title="マービン・ミンスキー">マービン・ミンスキー</a>と<a href="/wiki/%E3%82%B7%E3%83%BC%E3%83%A2%E3%82%A2%E3%83%BB%E3%83%91%E3%83%91%E3%83%BC%E3%83%88" title="シーモア・パパート">シーモア・パパート</a>が主導して、マッカーシーとは異なる手続き的手法が開発された。<a href="/wiki/Planner" title="Planner">Planner</a> が開発されたとき、これら2つの手法の関係に関する疑問が生まれた。Robert Kowalski は「計算は推論に包含される」という命題を生み出した。彼はこれを 1988年の Pat Hayes の論文にあった言葉「計算は制御された推論である」が元になっているとしている。Kowalski や Hayes とは逆に、<a href="/wiki/%E3%82%AB%E3%83%BC%E3%83%AB%E3%83%BB%E3%83%92%E3%83%A5%E3%83%BC%E3%82%A4%E3%83%83%E3%83%88" title="カール・ヒューイット">カール・ヒューイット</a>は「論理的推論はオープンシステムの並行計算を実行することが不可能だ」という命題を生み出した。 </p><p>論理的手法と手続き的手法の関係という問題の答えは、手続き的手法の数学的意味(<a href="/wiki/%E8%A1%A8%E7%A4%BA%E7%9A%84%E6%84%8F%E5%91%B3%E8%AB%96" title="表示的意味論">表示的意味論</a>)と論理の数学的意味(<a href="/wiki/%E3%83%A2%E3%83%87%E3%83%AB%E7%90%86%E8%AB%96" title="モデル理論">モデル理論</a>)は異なる、ということである。 </p> <div class="mw-heading mw-heading2"><h2 id="歴史"><span id=".E6.AD.B4.E5.8F.B2"></span>歴史</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=2" title="節を編集: 歴史"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>論理プログラミングは、1950年代から盛んになった<a href="/wiki/%E8%87%AA%E5%8B%95%E5%AE%9A%E7%90%86%E8%A8%BC%E6%98%8E" title="自動定理証明">自動定理証明</a>と、1958年公開言語「<a href="/wiki/LISP" title="LISP">LISP</a>」を最初の実践手段にしている。<a href="/wiki/%E3%83%9E%E3%82%B5%E3%83%81%E3%83%A5%E3%83%BC%E3%82%BB%E3%83%83%E3%83%84%E5%B7%A5%E7%A7%91%E5%A4%A7%E5%AD%A6" title="マサチューセッツ工科大学">マサチューセッツ工科大学</a>でLISPを開発した<a href="/wiki/%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%BB%E3%83%9E%E3%83%83%E3%82%AB%E3%83%BC%E3%82%B7%E3%83%BC" title="ジョン・マッカーシー">ジョン・マッカーシー</a>は、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=Advice_taker&amp;action=edit&amp;redlink=1" class="new" title="「Advice taker」 (存在しないページ)">Advice taker</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Advice_taker" class="extiw" title="en:Advice taker">英語版</a>)</span></span>という常識<a href="/wiki/%E6%8E%A8%E8%AB%96%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%B3" title="推論エンジン">推論</a>仮説を発表している。 </p> <style data-mw-deduplicate="TemplateStyles:r86501635">.mw-parser-output .templatequote{overflow:hidden;margin:1em 0;padding:0 40px}.mw-parser-output .templatequote .templatequotecite{line-height:1.5em;text-align:left;padding-left:1.6em;margin-top:0}</style><blockquote class="templatequote"><div>適切な形式言語(述語論理計算の一部に近い)を処理するプログラムは共通の”声明書”になる。基本プログラムは前提から直ちに結論を導き出す。その結論は宣言的かもしれないし命令的かもしれない。命令的結論が導出されたら、プログラムはそれに応じた動作もする。</div></blockquote> <p><a href="/wiki/%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%BB%E3%83%9E%E3%83%83%E3%82%AB%E3%83%BC%E3%82%B7%E3%83%BC" title="ジョン・マッカーシー">ジョン・マッカーシー</a>は更にこう補足しており、これは最初の<a href="/wiki/%E4%BA%BA%E5%B7%A5%E7%9F%A5%E8%83%BD" title="人工知能">人工知能</a>仮説のようである。 </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r86501635"><blockquote class="templatequote"><div>我々がadvice takerに期待する主な利点は、その記号環境と探求物についての”声明”を作成するだけで、その動作が改良されるということである。”声明”の作成には、プログラム知識やadvice takerの事前知識をほとんど要求されないだろう。advice takerは事前知識に基づく広範囲な論理的帰結を取り揃えられると仮定できる。従って次のように言える。『事前知識を豊富に与えられ、自動演繹を行うプログラムは常識を備えている』</div></blockquote> <p>なお、マッカーシーは現代で言われる論理プログラミングの形態にはそれほど関与していない。 </p><p><b>宣言的知識表現と手続き的知識表現</b> </p><p>1965年頃、<a href="/wiki/%E3%82%B9%E3%82%BF%E3%83%B3%E3%83%95%E3%82%A9%E3%83%BC%E3%83%89%E5%A4%A7%E5%AD%A6" title="スタンフォード大学">スタンフォード大学</a>の<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%B3%E3%83%BC%E3%83%87%E3%83%AB%E3%83%BB%E3%82%B0%E3%83%AA%E3%83%BC%E3%83%B3&amp;action=edit&amp;redlink=1" class="new" title="「コーデル・グリーン」 (存在しないページ)">コーデル・グリーン</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Cordell_Green" class="extiw" title="en:Cordell Green">英語版</a>)</span></span>が、節形式(clausal form)のプログラムとその<a href="/wiki/%E5%B0%8E%E5%87%BA%E5%8E%9F%E7%90%86" title="導出原理">導出原理</a>を考案した。これは<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%BB%E3%82%A2%E3%83%A9%E3%83%B3%E3%83%BB%E3%83%AD%E3%83%93%E3%83%B3%E3%82%BD%E3%83%B3&amp;action=edit&amp;redlink=1" class="new" title="「ジョン・アラン・ロビンソン」 (存在しないページ)">ジョン・アラン・ロビンソン</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/John_Alan_Robinson" class="extiw" title="en:John Alan Robinson">英語版</a>)</span></span>の<a href="/wiki/%E5%91%BD%E9%A1%8C%E8%AB%96%E7%90%86" title="命題論理">命題論理</a>の<a href="/wiki/%E5%8D%98%E4%B8%80%E5%8C%96" class="mw-redirect" title="単一化">単一化</a>の<a href="/wiki/%E6%BC%94%E7%B9%B9%E6%B3%95" class="mw-redirect" title="演繹法">演繹法</a>を参考にしていた。1967年に<a href="/wiki/%E3%82%A2%E3%83%90%E3%83%87%E3%82%A3%E3%83%BC%E3%83%B3%E5%A4%A7%E5%AD%A6" title="アバディーン大学">アバディーン大学</a>で開発された言語「<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=Absys&amp;action=edit&amp;redlink=1" class="new" title="「Absys」 (存在しないページ)">Absys</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Absys" class="extiw" title="en:Absys">英語版</a>)</span></span>」は最初期の論理プログラミングとして知られている。 </p><p>1960年代の論理プログラミングの進展を通して、<a href="/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="数理論理学">数理論理学</a>に忠実な<a href="/wiki/%E5%AE%A3%E8%A8%80%E7%9A%84%E7%9F%A5%E8%AD%98" title="宣言的知識">宣言的知識表現</a>と、最適化アルゴリズムを取り入れる<a href="/wiki/%E6%89%8B%E7%B6%9A%E3%81%8D%E7%9A%84%E7%9F%A5%E8%AD%98" title="手続き的知識">手続き的知識表現</a>のどちらを指針にするべきかという議題が提起されていた。宣言的の支持者は、<a href="/wiki/%E3%82%B9%E3%82%BF%E3%83%B3%E3%83%95%E3%82%A9%E3%83%BC%E3%83%89%E5%A4%A7%E5%AD%A6" title="スタンフォード大学">スタンフォード大学</a>と<a href="/wiki/%E3%82%A8%E3%83%87%E3%82%A3%E3%83%B3%E3%83%90%E3%83%A9%E5%A4%A7%E5%AD%A6" title="エディンバラ大学">エディンバラ大学</a>中心の<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%BB%E3%82%A2%E3%83%A9%E3%83%B3%E3%83%BB%E3%83%AD%E3%83%93%E3%83%B3%E3%82%BD%E3%83%B3&amp;action=edit&amp;redlink=1" class="new" title="「ジョン・アラン・ロビンソン」 (存在しないページ)">ジョン・アラン・ロビンソン</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/John_Alan_Robinson" class="extiw" title="en:John Alan Robinson">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%B3%E3%83%BC%E3%83%87%E3%83%AB%E3%83%BB%E3%82%B0%E3%83%AA%E3%83%BC%E3%83%B3&amp;action=edit&amp;redlink=1" class="new" title="「コーデル・グリーン」 (存在しないページ)">コーデル・グリーン</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Cordell_Green" class="extiw" title="en:Cordell Green">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%90%E3%83%BC%E3%83%88%E3%83%A9%E3%83%A0%E3%83%BB%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A8%E3%83%AB&amp;action=edit&amp;redlink=1" class="new" title="「バートラム・ラファエル」 (存在しないページ)">バートラム・ラファエル</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Bertram_Raphael" class="extiw" title="en:Bertram Raphael">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%91%E3%83%83%E3%83%88%E3%83%BB%E3%83%98%E3%82%A4%E3%82%BA&amp;action=edit&amp;redlink=1" class="new" title="「パット・ヘイズ」 (存在しないページ)">パット・ヘイズ</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Pat_Hayes" class="extiw" title="en:Pat Hayes">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%AD%E3%83%90%E3%83%BC%E3%83%88%E3%83%BB%E3%82%B3%E3%83%AF%E3%83%AB%E3%82%B9%E3%82%AD&amp;action=edit&amp;redlink=1" class="new" title="「ロバート・コワルスキ」 (存在しないページ)">ロバート・コワルスキ</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Robert_Kowalski" class="extiw" title="en:Robert Kowalski">英語版</a>)</span></span>らであった。手続き的の支持者は、<a href="/wiki/%E3%83%9E%E3%82%B5%E3%83%81%E3%83%A5%E3%83%BC%E3%82%BB%E3%83%83%E3%83%84%E5%B7%A5%E7%A7%91%E5%A4%A7%E5%AD%A6" title="マサチューセッツ工科大学">マサチューセッツ工科大学</a>中心の<a href="/wiki/%E3%83%9E%E3%83%BC%E3%83%93%E3%83%B3%E3%83%BB%E3%83%9F%E3%83%B3%E3%82%B9%E3%82%AD%E3%83%BC" title="マービン・ミンスキー">マービン・ミンスキー</a>、<a href="/wiki/%E3%82%B7%E3%83%BC%E3%83%A2%E3%82%A2%E3%83%BB%E3%83%91%E3%83%91%E3%83%BC%E3%83%88" title="シーモア・パパート">シーモア・パパート</a>、<a href="/wiki/%E3%82%AB%E3%83%BC%E3%83%AB%E3%83%BB%E3%83%92%E3%83%A5%E3%83%BC%E3%82%A4%E3%83%83%E3%83%88" title="カール・ヒューイット">カール・ヒューイット</a>、<a href="/wiki/%E3%82%B8%E3%82%A7%E3%83%A9%E3%83%AB%E3%83%89%E3%83%BB%E3%82%B8%E3%82%A7%E3%82%A4%E3%83%BB%E3%82%B5%E3%82%B9%E3%83%9E%E3%83%B3" title="ジェラルド・ジェイ・サスマン">ジェラルド・サスマン</a>、<a href="/wiki/%E3%83%86%E3%83%AA%E3%83%BC%E3%83%BB%E3%82%A6%E3%82%A3%E3%83%8E%E3%82%B0%E3%83%A9%E3%83%BC%E3%83%89" title="テリー・ウィノグラード">テリー・ウィノグラード</a>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%A6%E3%83%BC%E3%82%B8%E3%83%B3%E3%83%BB%E3%83%81%E3%83%A3%E3%83%8B%E3%82%A2%E3%82%AF&amp;action=edit&amp;redlink=1" class="new" title="「ユージン・チャニアク」 (存在しないページ)">ユージン・チャニアク</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Eugene_Charniak" class="extiw" title="en:Eugene Charniak">英語版</a>)</span></span>らであった。 </p><p><b>Plannerの登場</b> </p><p>1969年、<a href="/wiki/%E3%82%AB%E3%83%BC%E3%83%AB%E3%83%BB%E3%83%92%E3%83%A5%E3%83%BC%E3%82%A4%E3%83%83%E3%83%88" title="カール・ヒューイット">カール・ヒューイット</a>設計の論理型言語「<a href="/wiki/Planner" title="Planner">Planner</a>」が<a href="/wiki/%E3%83%9E%E3%82%B5%E3%83%81%E3%83%A5%E3%83%BC%E3%82%BB%E3%83%83%E3%83%84%E5%B7%A5%E7%A7%91%E5%A4%A7%E5%AD%A6" title="マサチューセッツ工科大学">マサチューセッツ工科大学</a>で開発された。<a href="/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0" title="メインフレーム">メインフレーム</a>前提のPlannerの大規模さは運用できる環境を制限したので、1971年に<a href="/wiki/%E3%83%9D%E3%83%BC%E3%82%BF%E3%83%93%E3%83%AA%E3%83%86%E3%82%A3" class="mw-disambig" title="ポータビリティ">ポータビリティ</a>重視のサブセット版「Micro-Planner」が、<a href="/wiki/%E3%82%B8%E3%82%A7%E3%83%A9%E3%83%AB%E3%83%89%E3%83%BB%E3%82%B8%E3%82%A7%E3%82%A4%E3%83%BB%E3%82%B5%E3%82%B9%E3%83%9E%E3%83%B3" title="ジェラルド・ジェイ・サスマン">ジェラルド・サスマン</a>と<a href="/wiki/%E3%83%86%E3%83%AA%E3%83%BC%E3%83%BB%E3%82%A6%E3%82%A3%E3%83%8E%E3%82%B0%E3%83%A9%E3%83%BC%E3%83%89" title="テリー・ウィノグラード">テリー・ウィノグラード</a>らによって開発された。 </p><p>1971年、パパート、サスマン、チャニアクらの<a href="/wiki/MIT" class="mw-redirect" title="MIT">MIT</a>勢が、<a href="/wiki/%E3%82%A8%E3%83%87%E3%82%A3%E3%83%B3%E3%83%90%E3%83%A9%E5%A4%A7%E5%AD%A6" title="エディンバラ大学">エディンバラ大学</a>を訪問してMicro-Plannerと<a href="/wiki/SHRDLU" title="SHRDLU">SHRDLU</a>を披露した。当時の同大学は、対話型<a href="/wiki/%E8%87%AA%E5%8B%95%E5%AE%9A%E7%90%86%E8%A8%BC%E6%98%8E" title="自動定理証明">自動定理証明</a>プロジェクト「Logic for computable functions」が始動されていた論理プログラミングのメッカであった。Micro-Plannerなどを見た<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%91%E3%83%83%E3%83%88%E3%83%BB%E3%83%98%E3%82%A4%E3%82%BA&amp;action=edit&amp;redlink=1" class="new" title="「パット・ヘイズ」 (存在しないページ)">パット・ヘイズ</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Pat_Hayes" class="extiw" title="en:Pat Hayes">英語版</a>)</span></span>らは<a href="/wiki/%E6%89%8B%E7%B6%9A%E3%81%8D%E7%9A%84%E7%9F%A5%E8%AD%98" title="手続き的知識">手続き的</a>の価値を認め、同大学でもMicro-Plannerのサブセット版を実装してその有用性を確認した。Plannerを研究した<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%AD%E3%83%90%E3%83%BC%E3%83%88%E3%83%BB%E3%82%B3%E3%83%AF%E3%83%AB%E3%82%B9%E3%82%AD&amp;action=edit&amp;redlink=1" class="new" title="「ロバート・コワルスキ」 (存在しないページ)">ロバート・コワルスキ</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Robert_Kowalski" class="extiw" title="en:Robert Kowalski">英語版</a>)</span></span>は、<a href="/wiki/%E3%82%A2%E3%83%AB%E3%83%95%E3%83%AC%E3%83%83%E3%83%89%E3%83%BB%E3%83%9B%E3%83%BC%E3%83%B3" title="アルフレッド・ホーン">アルフレッド・ホーン</a>発案の<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>の論理プログラミング導入を提唱し、それへのSLD導出を考案している。更にエディンバラ大学ではPlannerのスーパーセット版「Popler」も開発された。 </p><p><b>Prologの登場</b> </p><p>1972年、<a href="/wiki/%E3%83%9E%E3%83%AB%E3%82%BB%E3%82%A4%E3%83%A6%E5%A4%A7%E5%AD%A6" class="mw-redirect" title="マルセイユ大学">マルセイユ大学</a>の<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%A2%E3%83%A9%E3%83%B3%E3%83%BB%E3%82%AB%E3%83%AB%E3%83%A1%E3%83%A9%E3%82%A6%E3%82%A2%E3%83%BC&amp;action=edit&amp;redlink=1" class="new" title="「アラン・カルメラウアー」 (存在しないページ)">アラン・カルメラウアー</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Alain_Colmerauer" class="extiw" title="en:Alain Colmerauer">英語版</a>)</span></span>らは、<a href="/wiki/%E3%82%B3%E3%83%AF%E3%83%AB%E3%82%B9%E3%82%AD" class="mw-redirect mw-disambig" title="コワルスキ">コワルスキ</a>らの助言を得て<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>とSLD導出をベースにした論理型言語「<a href="/wiki/Prolog" title="Prolog">Prolog</a>」を開発した。Prologに対する意見は分かれ、<a href="/wiki/%E3%82%AB%E3%83%BC%E3%83%AB%E3%83%BB%E3%83%92%E3%83%A5%E3%83%BC%E3%82%A4%E3%83%83%E3%83%88" title="カール・ヒューイット">カール・ヒューイット</a>などはMicro-Plannerの複製品であると言い、コワルスキは論理プログラミングへの良いアプローチであると評した<sup id="cite_ref-#1_2-1" class="reference"><a href="#cite_note-#1-2"><span class="cite-bracket">&#91;</span>2<span class="cite-bracket">&#93;</span></a></sup>。カルメラウアーの元祖版は「Marseille Prolog」と呼ばれる。コワルスキの門弟<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%83%87%E3%83%93%E3%83%83%E3%83%89%E3%83%BB%E3%82%A6%E3%82%A9%E3%83%BC%E3%83%AC%E3%83%B3&amp;action=edit&amp;redlink=1" class="new" title="「デビッド・ウォーレン」 (存在しないページ)">デビッド・ウォーレン</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/David_H._D._Warren" class="extiw" title="en:David H. D. Warren">英語版</a>)</span></span>の<a href="/wiki/%E3%82%A8%E3%83%87%E3%82%A3%E3%83%B3%E3%83%90%E3%83%A9%E5%A4%A7%E5%AD%A6" title="エディンバラ大学">エディンバラ大学</a>開発版は「Edinburgh Prolog」と呼ばれ、その系譜の1977年開発版「DEC-10 Prolog」がPrologの標準形になった。1979年にコワルスキは<a href="/wiki/%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%AA%E3%82%A2%E3%83%AB%E3%83%BB%E3%82%AB%E3%83%AC%E3%83%83%E3%82%B8%E3%83%BB%E3%83%AD%E3%83%B3%E3%83%89%E3%83%B3" title="インペリアル・カレッジ・ロンドン">インペリアル・カレッジ・ロンドン</a>で論理プログラミング基礎大全『<i>Logic for Problem Solving</i>』を上梓した。 </p><p>1983年、ウォーレンは<a href="/wiki/SRI%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8A%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%AB" title="SRIインターナショナル">SRIインターナショナル</a>でProlog言語処理系標準モデルの<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%A6%E3%82%A9%E3%83%BC%E3%83%AC%E3%83%B3%E6%8A%BD%E8%B1%A1%E3%83%9E%E3%82%B7%E3%83%B3&amp;action=edit&amp;redlink=1" class="new" title="「ウォーレン抽象マシン」 (存在しないページ)">ウォーレン抽象マシン</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Warren_Abstract_Machine" class="extiw" title="en:Warren Abstract Machine">英語版</a>)</span></span>を策定し、Prologの普及に努めた。1986年に<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%8D%94%E4%BC%9A&amp;action=edit&amp;redlink=1" class="new" title="「論理プログラミング協会」 (存在しないページ)">論理プログラミング協会</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Association_for_Logic_Programming" class="extiw" title="en:Association for Logic Programming">英語版</a>)</span></span>が設立された。1987年にDEC-10系譜の「<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=SWI-Prolog&amp;action=edit&amp;redlink=1" class="new" title="「SWI-Prolog」 (存在しないページ)">SWI-Prolog</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/SWI-Prolog" class="extiw" title="en:SWI-Prolog">英語版</a>)</span></span>」が<a href="/wiki/%E3%82%A2%E3%83%A0%E3%82%B9%E3%83%86%E3%83%AB%E3%83%80%E3%83%A0%E5%A4%A7%E5%AD%A6" title="アムステルダム大学">アムステルダム大学</a>の<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%B8%E3%83%A3%E3%83%B3%E3%83%BB%E3%82%A6%E3%82%A3%E3%83%BC%E3%83%AB%E3%83%A1%E3%83%BC%E3%82%AB%E3%83%BC&amp;action=edit&amp;redlink=1" class="new" title="「ジャン・ウィールメーカー」 (存在しないページ)">ジャン・ウィールメーカー</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Jan_Wielemaker" class="extiw" title="en:Jan Wielemaker">英語版</a>)</span></span>によって開発され、これが現在最も使われているPrologになっている。 </p><p>1980年代の日本の<a href="/wiki/%E6%83%85%E5%A0%B1%E5%B7%A5%E5%AD%A6" title="情報工学">情報工学</a>分野では<a href="/wiki/Prolog" title="Prolog">Prolog</a>研究が盛んに行われており、人工知能コンピュータ開発を目的にした<a href="/wiki/%E7%AC%AC%E4%BA%94%E4%B8%96%E4%BB%A3%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF" title="第五世代コンピュータ">第五世代コンピュータ</a>計画の中心になっていた。 </p> <div class="mw-heading mw-heading2"><h2 id="特徴"><span id=".E7.89.B9.E5.BE.B4"></span>特徴</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=3" title="節を編集: 特徴"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="論理と制御"><span id=".E8.AB.96.E7.90.86.E3.81.A8.E5.88.B6.E5.BE.A1"></span>論理と制御</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=4" title="節を編集: 論理と制御"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>論理プログラミングでは「ロジック(論理)+コントロール(制御)=アルゴリズム(算法)」とされている。ロジックとは、<a href="/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="数理論理学">数理論理学</a>の<a href="/wiki/%E8%AB%96%E7%90%86%E5%BC%8F_(%E6%95%B0%E5%AD%A6)" title="論理式 (数学)">論理式</a>を特定の解釈で投影したプログラム書式表現を指す。これの代表例はファクト(事実)とルール(規則)を列挙するものであり、ルールは<a href="/wiki/%E8%AB%96%E7%90%86%E5%8C%85%E5%90%AB" title="論理包含">論理包含</a>を主体にする。コントロールとは、そのロジックに対して、一定のファクトまたは特定のゴール(目標)を起点にした任意の問題条件を与えて、一定の解決条件を導出(resolution)することを指す。これを問題解決と言う。ロジックとコントロールの融合は、多様な<a href="/wiki/%E8%87%AA%E5%8B%95%E5%AE%9A%E7%90%86%E8%A8%BC%E6%98%8E" title="自動定理証明">定理証明</a>戦略を表現する<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">&#91;</span>3<span class="cite-bracket">&#93;</span></a></sup>。 </p><p>最も普及している<a href="/wiki/Prolog" title="Prolog">Prolog</a>系の論理プログラムで使われる<a href="/wiki/%E5%B0%8E%E5%87%BA%E5%8E%9F%E7%90%86" title="導出原理">導出原理</a>は、<a href="/wiki/%E8%AB%96%E7%90%86%E5%BC%8F_(%E6%95%B0%E5%AD%A6)" title="論理式 (数学)">論理式</a>をこれ以上解消できない所まで変形させていく<a href="/wiki/%E6%BC%94%E7%B9%B9" title="演繹">演繹</a>や簡約である。そこでのロジックは<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>で表現されており、コントロールにはSLD導出が使われている。 </p> <div class="mw-heading mw-heading3"><h3 id="問題解決"><span id=".E5.95.8F.E9.A1.8C.E8.A7.A3.E6.B1.BA"></span>問題解決</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=5" title="節を編集: 問題解決"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure typeof="mw:File/Thumb"><a href="/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Andortree.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Andortree.png/200px-Andortree.png" decoding="async" width="200" height="151" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Andortree.png/300px-Andortree.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Andortree.png/400px-Andortree.png 2x" data-file-width="1303" data-file-height="982" /></a><figcaption>and-or木</figcaption></figure> <p>問題解決(problem solving)とその実践の<a href="/wiki/%E5%B0%8E%E5%87%BA%E5%8E%9F%E7%90%86" title="導出原理">導出原理</a>は、<a href="/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="数理論理学">数理論理学</a>の膨大な知識から様々なものが存在する。ここではシンプルなロジックの代表格の<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>を例にする。<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>は最大1個の正リテラルを持つ<a href="/wiki/%E9%81%B8%E8%A8%80%E6%A8%99%E6%BA%96%E5%BD%A2" title="選言標準形">選言標準形</a>をベースにしており、<a href="/wiki/%E5%91%BD%E9%A1%8C%E8%AB%96%E7%90%86" title="命題論理">命題論理</a>のホーン節は、素直に<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=AND-OR%E6%9C%A8&amp;action=edit&amp;redlink=1" class="new" title="「AND-OR木」 (存在しないページ)">AND-OR木</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/And-or_tree" class="extiw" title="en:And-or tree">英語版</a>)</span></span>に投影できる。(右図はこの説明には不向きだが、これしか無かったのであしからず)右図のAND-OR木では、最上ノードのPがゴールになり、末端ノードのT・U・R・Sはファクトになって、このように解釈できる。 </p><p><code>if Q and R then P</code>, <code>if S then P</code>, <code>if T then Q</code>, <code>if U then Q</code>. </p><p>それへの<a href="/wiki/%E5%B0%8E%E5%87%BA%E5%8E%9F%E7%90%86" title="導出原理">導出原理</a>は、ファクトから問題解決する<a href="/wiki/%E5%89%8D%E5%90%91%E3%81%8D%E9%80%A3%E9%8E%96" title="前向き連鎖">前向き連鎖</a>と、ゴールから問題解決する<a href="/wiki/%E5%BE%8C%E5%90%91%E3%81%8D%E9%80%A3%E9%8E%96" title="後向き連鎖">後向き連鎖</a>に大別される。前向き連鎖は、与えられたファクトから様々な別のファクトをゴールとして解答する演繹手法である。TとRを与えるとPが解答される。Sを与えるとPが解答される。前向き連鎖は<a href="/wiki/%E3%82%A8%E3%82%AD%E3%82%B9%E3%83%91%E3%83%BC%E3%83%88%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0" title="エキスパートシステム">エキスパートシステム</a>などに使われている。後向き連鎖は、与えられたゴールがファクトかどうかを解答する演繹手法である。Pを与えるとその前件のRおよびQのそのまた前件のTがファクトなのでPはファクトと解答される。後向き連鎖は論理型言語の代表<a href="/wiki/Prolog" title="Prolog">Prolog</a>に使われている。 </p><p><a href="/wiki/%E8%BF%B0%E8%AA%9E%E8%AB%96%E7%90%86" title="述語論理">述語論理</a>の<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>は、AND-OR木の各ノードが命題から述語になるので複雑になる。各ノードの述語記号の項は、定項と<a href="/wiki/%E5%A4%89%E9%A0%85" class="mw-redirect" title="変項">変項</a>に分かれるが、定項がファクトで、変項が<a href="/wiki/%E5%8D%98%E4%B8%80%E5%8C%96" class="mw-redirect" title="単一化">単一化</a>によるファクトに束縛可能なら、そのノードは述語から命題になれる。 </p> <div class="mw-heading mw-heading3"><h3 id="失敗による否定"><span id=".E5.A4.B1.E6.95.97.E3.81.AB.E3.82.88.E3.82.8B.E5.90.A6.E5.AE.9A"></span>失敗による否定</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=6" title="節を編集: 失敗による否定"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>論理プログラムが節 H&#160;:- B<sub>1</sub>, ..., B<sub>n</sub> から構成され、H, B<sub>1</sub>, ..., B<sub>n</sub> が全てアトミックな述語論理式であれば、このプログラムは確定(definite)していると呼ばれ、<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>プログラムであるともいう。確定した論理プログラムの手続き的意味と宣言的意味は、そのまま述語論理的に解釈できる。否定を含めると、古典的論理との関係はそれほど直接的ではなくなる。「<a href="/wiki/%E5%A4%B1%E6%95%97%E3%81%AB%E3%82%88%E3%82%8B%E5%90%A6%E5%AE%9A" title="失敗による否定">失敗による否定</a>; negation-as-failure」推論規則によれば、ゴール Q がプログラムによって証明できない場合、その否定 not(Q) は証明されたと見なされる。これは古典的論理学では全く正しくない。公理から Q も not(Q) も導けない可能性がある。結果として、この規則は論理的例外と実用的困難さをもたらした。後方連鎖証明規則に「失敗による否定」を加えても完全ではない。その場合、プログラムを宣言的に読んで得られる論理的結果の全てを証明することができない。しかし、ほとんどの Prolog 系言語は「失敗による否定」を <b>\+</b> という文字列を使って実装している。 </p><p>完全ではないものの、プログラムとしての完全性(completion)という意味では「失敗による否定」規則は(ある制限下で)<a href="/wiki/%E5%81%A5%E5%85%A8%E6%80%A7" title="健全性">健全</a>な推論規則であると言える。論理プログラムの完全性は Keith Clark が最初に定義した。おおまかに言えば、それはプログラム内の左辺に同じ述語のある全節の集合である。例えば、以下のようなものである: </p> <pre> H&#160;:- Body<sub>1</sub>. .... H&#160;:- Body<sub>k</sub>. </pre> <p>これらは次の1つの論理式と等価である。 </p> <pre> H iff (Body<sub>1</sub> or ... or Body<sub>k</sub>) </pre> <p>ここで、<i>iff</i> は<a href="/wiki/%E5%90%8C%E5%80%A4" title="同値">同値</a>(if and only if)を意味する。完全性を主張するには、等号と等号に関する公理を明確にする必要もある。完全性は非単調推論のためのマッカーシーの<a href="/w/index.php?title=%E3%82%B5%E3%83%BC%E3%82%AB%E3%83%A0%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3&amp;action=edit&amp;redlink=1" class="new" title="「サーカムスクリプション」 (存在しないページ)">サーカムスクリプション</a>や<a href="/wiki/%E9%96%89%E4%B8%96%E7%95%8C%E4%BB%AE%E8%AA%AC" title="閉世界仮説">閉世界仮説</a>に密接に関連する。 </p> <div class="mw-heading mw-heading3"><h3 id="知識表現"><span id=".E7.9F.A5.E8.AD.98.E8.A1.A8.E7.8F.BE"></span>知識表現</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=7" title="節を編集: 知識表現"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>知識表現(knowledge representation)は、<a href="/wiki/%E5%AE%A3%E8%A8%80%E7%9A%84%E7%9F%A5%E8%AD%98" title="宣言的知識">宣言的知識</a>と<a href="/wiki/%E6%89%8B%E7%B6%9A%E3%81%8D%E7%9A%84%E7%9F%A5%E8%AD%98" title="手続き的知識">手続き的知識</a>に大別される。例えば「空から水」への知識は、宣言的では「雨」と表現され、そこから手続き的では「傘をさす」などと表現される。俗説になるが宣言的知識はintelligence、手続き的知識はwisdomとも言われる。<a href="/wiki/Prolog" title="Prolog">Prolog</a>の<a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a>と<a href="/wiki/%E5%BE%8C%E5%90%91%E3%81%8D%E9%80%A3%E9%8E%96" title="後向き連鎖">後向き連鎖</a>のSLD導出と<a href="/wiki/%E5%A4%B1%E6%95%97%E3%81%AB%E3%82%88%E3%82%8B%E5%90%A6%E5%AE%9A" title="失敗による否定">失敗による否定</a>の<a href="/wiki/%E9%9D%9E%E5%8D%98%E8%AA%BF%E8%AB%96%E7%90%86" title="非単調論理">非単調論理</a>の論理プログラミングは、宣言的知識と手続き的知識の混合とされている。 </p> <div class="mw-heading mw-heading2"><h2 id="Prolog">Prolog</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=8" title="節を編集: Prolog"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="rellink" style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note">→詳細は「<a href="/wiki/Prolog" title="Prolog">Prolog</a>」を参照</div> <p><a href="/wiki/Prolog" title="Prolog">Prolog</a> は 1972年にマルセイユのカルメラウアーが考案し、1974年にコワルスキーがさらに形式的に定義し、数理論理学に基づいた言語として発表した。Prolog のプログラムは<a href="/wiki/%E4%B8%80%E9%9A%8E%E8%BF%B0%E8%AA%9E%E8%AB%96%E7%90%86" title="一階述語論理">一階述語論理</a>のサブセットの論理式の集まりとして読むことができ、一階述語論理のモデル理論と証明理論を継承している。プログラムの節は次のように書かれる: </p> <pre> H&#160;:- B<sub>1</sub>, ..., B<sub>n</sub>. </pre> <p>これを宣言として読めば、以下の論理的含意に等しい: </p> <pre> B<sub>1</sub> and ... and B<sub>n</sub> implies H </pre> <p>ここで、節内の全変数(変項)は<a href="/wiki/%E5%85%A8%E7%A7%B0%E8%A8%98%E5%8F%B7" title="全称記号">全称量化</a>されている。手続き的な後方連鎖規則として見れば、<tt>H</tt> を証明するには、<tt>B<sub>1</sub></tt> から <tt>B<sub>n</sub></tt> までを証明できれば十分であることがわかる。手続き的意味は線形導出法(LUSH または SLD導出法)による反駁証明によっても定式化できる。宣言的意味と手続き的意味の密接な関係は論理プログラミング言語の際立った特徴であるが、否定や論理和といった他の量化子をプログラム内に許すようになると関係は複雑になる。 </p><p><b>Prolog の実装</b> </p><p>最初に実装された <a href="/wiki/Prolog" title="Prolog">Prolog</a>処理系は1972年に開発された Marseille Prolog である。Prolog が実用的なプログラミング言語として使われるきっかけとなったのは 1977年にエジンバラで David Warren がコンパイラ処理系を開発したことであった。Edinburgh Prolog は他の記号処理言語(Lispなど)と処理速度を比較して遜色ない性能であることを世に示した。Edinburgh Prolog はデファクトスタンダードとなり、後の ISO での Prolog 標準化に影響を与えた。 </p> <div class="mw-heading mw-heading2"><h2 id="派生分野"><span id=".E6.B4.BE.E7.94.9F.E5.88.86.E9.87.8E"></span>派生分野</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=9" title="節を編集: 派生分野"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="並行論理プログラミング"><span id=".E4.B8.A6.E8.A1.8C.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>並行論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=10" title="節を編集: 並行論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="rellink" style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note">→詳細は「<a href="/wiki/%E4%B8%A6%E8%A1%8C%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="並行論理プログラミング">並行論理プログラミング</a>」を参照</div> <p>Keith Clark、Hervé Gallaire、Steve Gregory、Vijay Saraswat、Udi Shapiro、Kazunori Ueda(上田和紀)らは、共有変数の<a href="/wiki/%E3%83%A6%E3%83%8B%E3%83%95%E3%82%A3%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3" title="ユニフィケーション">ユニフィケーション</a>機能とメッセージのためのデータ構造ストリーム機能を備えた<a href="/wiki/%E4%B8%A6%E8%A1%8C%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="並行論理プログラミング">並行論理プログラミング</a>言語を開発した。数理論理学に基づく<a href="/wiki/%E4%B8%A6%E8%A1%8C%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" class="mw-redirect" title="並行プログラミング">並行プログラミング</a>の基礎を築くための研究であるが、これが<a href="/wiki/%E7%AC%AC%E4%BA%94%E4%B8%96%E4%BB%A3%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF" title="第五世代コンピュータ">第五世代コンピュータ</a>の基盤ともなった。 </p><p>並行論理プログラミングは<a href="/wiki/%E5%88%B6%E7%B4%84%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="制約論理プログラミング">制約論理プログラミング</a>と結び付き、制約で並行実行を制御する<a href="/wiki/%E4%B8%A6%E8%A1%8C%E5%88%B6%E7%B4%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="並行制約プログラミング">並行制約プログラミング</a>として統合され、 Saraswatらにより理論化が行われた。KahnとSaraswatは並行制約プログラミングの枠内での制約の設定で<a href="/wiki/%E3%82%A2%E3%82%AF%E3%82%BF%E3%83%BC%E3%83%A2%E3%83%87%E3%83%AB" title="アクターモデル">アクターモデル</a>が実現できることから、アクターモデルは並行制約プログラミングの特別なケースだと主張した<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup>。 </p> <ul><li><a href="/wiki/Concurrent_Prolog" title="Concurrent Prolog">Concurrent Prolog</a>、<a href="/wiki/PARLOG" title="PARLOG">PARLOG</a>、<a href="/wiki/Guarded_Horn_Clauses" title="Guarded Horn Clauses">GHC</a>、<a href="/wiki/KL1" title="KL1">KL1</a></li> <li><a href="/wiki/Oz_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E)" title="Oz (プログラミング言語)">Oz</a>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E3%82%A2%E3%83%AA%E3%82%B9%E8%A8%80%E8%AA%9E&amp;action=edit&amp;redlink=1" class="new" title="「アリス言語」 (存在しないページ)">Alice</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Alice_(programming_language)" class="extiw" title="en:Alice (programming language)">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=ToonTalk&amp;action=edit&amp;redlink=1" class="new" title="「ToonTalk」 (存在しないページ)">ToonTalk</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/ToonTalk" class="extiw" title="en:ToonTalk">英語版</a>)</span></span></li></ul> <div class="mw-heading mw-heading3"><h3 id="制約論理プログラミング"><span id=".E5.88.B6.E7.B4.84.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>制約論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=11" title="節を編集: 制約論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="rellink" style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note">→詳細は「<a href="/wiki/%E5%88%B6%E7%B4%84%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="制約論理プログラミング">制約論理プログラミング</a>」を参照</div><p>述語記号の項に、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%E5%88%B6%E7%B4%84%EF%BC%88%E6%95%B0%E5%AD%A6%EF%BC%89&amp;action=edit&amp;redlink=1" class="new" title="「制約(数学)」 (存在しないページ)">制約</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Constraint_(mathematics)" class="extiw" title="en:Constraint (mathematics)">英語版</a>)</span></span>も含めるようにしている。制約(constraint)とは値(元・要素・個体)を”関係性”で表現したものであり、決定変数の集合で定義される計算対象である。 </p><ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=B-Prolog&amp;action=edit&amp;redlink=1" class="new" title="「B-Prolog」 (存在しないページ)">B-Prolog</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/B-Prolog" class="extiw" title="en:B-Prolog">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=Ciao%E8%A8%80%E8%AA%9E&amp;action=edit&amp;redlink=1" class="new" title="「Ciao言語」 (存在しないページ)">Ciao</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Ciao_(programming_language)" class="extiw" title="en:Ciao (programming language)">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=ECLiPSe&amp;action=edit&amp;redlink=1" class="new" title="「ECLiPSe」 (存在しないページ)">ECLiPSe</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/ECLiPSe" class="extiw" title="en:ECLiPSe">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=Fril&amp;action=edit&amp;redlink=1" class="new" title="「Fril」 (存在しないページ)">Fril</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Fril" class="extiw" title="en:Fril">英語版</a>)</span></span></li></ul> <div class="mw-heading mw-heading3"><h3 id="高階論理プログラミング"><span id=".E9.AB.98.E9.9A.8E.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>高階論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=12" title="節を編集: 高階論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>述語記号の項に、述語記号も含めるようにしている。例えば、<code>p(A, B, C)&#160;:- q(A, foo), r(B, bar), C.</code>では、Cを別個の述語記号にできる。テンプレートメタ的な書式も扱っており、例えば<code>p(A, B, C)&#160;:- (C)(A, B)</code>では、Cが述語名でAとBがその項になる。 </p> <ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=%CE%9BProlog&amp;action=edit&amp;redlink=1" class="new" title="「ΛProlog」 (存在しないページ)">λProlog</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/%CE%9BProlog" class="extiw" title="en:ΛProlog">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=HiLog&amp;action=edit&amp;redlink=1" class="new" title="「HiLog」 (存在しないページ)">HiLog</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/HiLog" class="extiw" title="en:HiLog">英語版</a>)</span></span></li></ul> <div class="mw-heading mw-heading3"><h3 id="関数論理プログラミング"><span id=".E9.96.A2.E6.95.B0.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>関数論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=13" title="節を編集: 関数論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>述語記号と関数記号の双方をリテラルにしている。 </p> <ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=Mercury%E8%A8%80%E8%AA%9E&amp;action=edit&amp;redlink=1" class="new" title="「Mercury言語」 (存在しないページ)">Mercury</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Mercury" class="extiw" title="en:Mercury">英語版</a>)</span></span>、<span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=Curry_(programming_language)&amp;action=edit&amp;redlink=1" class="new" title="「Curry (programming language)」 (存在しないページ)">Curry</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Curry_(programming_language)" class="extiw" title="en:Curry (programming language)">英語版</a>)</span></span></li></ul> <div class="mw-heading mw-heading3"><h3 id="オブジェクト指向論理プログラミング"><span id=".E3.82.AA.E3.83.96.E3.82.B8.E3.82.A7.E3.82.AF.E3.83.88.E6.8C.87.E5.90.91.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>オブジェクト指向論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=14" title="節を編集: オブジェクト指向論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>ファクトとルールをまとめた<a href="/wiki/%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB" title="モジュール">モジュール</a>を扱っている。<code>module.predicate(A, B, C)</code>のように表記できる。モジュールは、<a href="/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91" title="オブジェクト指向">オブジェクト指向</a>由来の<a href="/wiki/%E7%B6%99%E6%89%BF_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)" title="継承 (プログラミング)">継承</a>と<a href="/wiki/%E5%A4%9A%E6%85%8B%E6%80%A7" class="mw-redirect" title="多態性">多態性</a>を備えている。既存の上位モジュールを<a href="/wiki/%E7%B6%99%E6%89%BF_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)" title="継承 (プログラミング)">継承</a>して新規の下位モジュールを定義できる。上位モジュールの変数に下位モジュールを代入して<a href="/wiki/%E3%82%B5%E3%83%96%E3%82%BF%E3%82%A4%E3%83%94%E3%83%B3%E3%82%B0" class="mw-redirect" title="サブタイピング">サブタイピング</a>するのが<a href="/wiki/%E5%A4%9A%E6%85%8B%E6%80%A7" class="mw-redirect" title="多態性">多態性</a>である。例えば<code>var.predicate(A, B, C)</code>では、上位変数<code>var</code>に下位モジュールAを代入するとAの<code>predicate</code>と解釈され、同変数に下位モジュールBを代入するとBの<code>predicate</code>と解釈される。 </p> <ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"><a href="/w/index.php?title=Visual_Prolog&amp;action=edit&amp;redlink=1" class="new" title="「Visual Prolog」 (存在しないページ)">Visual Prolog</a><span style="font-size: 0.77em; font-weight: normal;" class="noprint">(<a href="https://en.wikipedia.org/wiki/Visual_Prolog" class="extiw" title="en:Visual Prolog">英語版</a>)</span></span></li></ul> <div class="mw-heading mw-heading3"><h3 id="線形論理プログラミング"><span id=".E7.B7.9A.E5.BD.A2.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>線形論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=15" title="節を編集: 線形論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/%E7%B7%9A%E5%BD%A2%E8%AB%96%E7%90%86" title="線形論理">線形論理</a>を扱っている。 </p> <div class="mw-heading mw-heading3"><h3 id="帰納論理プログラミング"><span id=".E5.B8.B0.E7.B4.8D.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>帰納論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=16" title="節を編集: 帰納論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/%E5%B8%B0%E7%B4%8D%E6%8E%A8%E8%AB%96" class="mw-redirect" title="帰納推論">帰納推論</a>を扱っている。これまでの<a href="/wiki/%E6%BC%94%E7%B9%B9%E8%AB%96%E7%90%86" class="mw-redirect" title="演繹論理">演繹推論</a>とは別種になる。 </p> <div class="mw-heading mw-heading3"><h3 id="仮説論理プログラミング"><span id=".E4.BB.AE.E8.AA.AC.E8.AB.96.E7.90.86.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.9F.E3.83.B3.E3.82.B0"></span>仮説論理プログラミング</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=17" title="節を編集: 仮説論理プログラミング"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/%E4%BB%AE%E8%AA%AC%E7%9A%84%E6%8E%A8%E8%AB%96" class="mw-redirect" title="仮説的推論">仮説推論</a>を扱っている。これまでの<a href="/wiki/%E6%BC%94%E7%B9%B9%E8%AB%96%E7%90%86" class="mw-redirect" title="演繹論理">演繹推論</a>とは別種になる。 </p> <div class="mw-heading mw-heading2"><h2 id="適用分野"><span id=".E9.81.A9.E7.94.A8.E5.88.86.E9.87.8E"></span>適用分野</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=18" title="節を編集: 適用分野"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <dl><dt><a href="/wiki/%E3%82%A8%E3%82%AD%E3%82%B9%E3%83%91%E3%83%BC%E3%83%88%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0" title="エキスパートシステム">エキスパートシステム</a></dt> <dd>特定応用分野の巨大なモデルから、推奨や回答を生成するプログラム</dd> <dt><a href="/wiki/%E8%87%AA%E5%8B%95%E5%AE%9A%E7%90%86%E8%A8%BC%E6%98%8E" title="自動定理証明">自動定理証明</a></dt> <dd>既存の理論から新たな定理を生成するプログラム</dd></dl> <div class="mw-heading mw-heading2"><h2 id="関連項目"><span id=".E9.96.A2.E9.80.A3.E9.A0.85.E7.9B.AE"></span>関連項目</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=19" title="節を編集: 関連項目"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="数理論理学">数理論理学</a></li> <li><a href="/wiki/%E8%BF%B0%E8%AA%9E%E8%AB%96%E7%90%86" title="述語論理">述語論理</a></li> <li><a href="/wiki/%E9%9D%9E%E5%8D%98%E8%AA%BF%E8%AB%96%E7%90%86" title="非単調論理">非単調論理</a></li> <li><a href="/wiki/%E5%B0%8E%E5%87%BA%E5%8E%9F%E7%90%86" title="導出原理">導出原理</a></li> <li><a href="/wiki/%E3%83%9B%E3%83%BC%E3%83%B3%E7%AF%80" title="ホーン節">ホーン節</a></li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a></li> <li><a href="/wiki/Planner" title="Planner">Planner</a></li> <li><a href="/wiki/%E7%AC%AC%E4%BA%94%E4%B8%96%E4%BB%A3%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF" title="第五世代コンピュータ">第五世代コンピュータ計画</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="脚注"><span id=".E8.84.9A.E6.B3.A8"></span>脚注</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=20" title="節を編集: 脚注"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="noprint" style="float:right; font-size:90%;">[<a href="/wiki/Help:%E8%84%9A%E6%B3%A8/%E8%AA%AD%E8%80%85%E5%90%91%E3%81%91" title="Help:脚注/読者向け"><span title="この欄の操作法">脚注の使い方</span></a>]</div> <ol class="references"> <li id="cite_note-1"><b><a href="#cite_ref-1">^</a></b> <span class="reference-text">Alain Colmerauer and Philippe Roussel, <b>The birth of Prolog</b></span> </li> <li id="cite_note-#1-2">^ <a href="#cite_ref-#1_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-#1_2-1"><sup><i><b>b</b></i></sup></a> <span class="reference-text">Robert Kowalski. <b>The Early Years of Logic Programming</b></span> </li> <li id="cite_note-3"><b><a href="#cite_ref-3">^</a></b> <span class="reference-text"><cite style="font-style:normal" class="citation journal">R.A.Kowalski&#32;(July 1979).&#32;“Algorithm=Logic + Control”.&#32;<i>Communications of the ACM</i>&#32;<b>22</b>&#32;(7): 424–436.&#32;<a href="/wiki/Doi_(%E8%AD%98%E5%88%A5%E5%AD%90)" class="mw-redirect" title="Doi (識別子)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F359131.359136">10.1145/359131.359136</a>.</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.atitle=Algorithm%3DLogic+%2B+Control&amp;rft.jtitle=Communications+of+the+ACM&amp;rft.aulast=R.A.Kowalski&amp;rft.au=R.A.Kowalski&amp;rft.date=July+1979&amp;rft.volume=22&amp;rft.issue=7&amp;rft.pages=424%E2%80%93436&amp;rft_id=info:doi/10.1145%2F359131.359136&amp;rfr_id=info:sid/ja.wikipedia.org:%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0"><span style="display: none;">&#160;</span></span></span> </li> <li id="cite_note-4"><b><a href="#cite_ref-4">^</a></b> <span class="reference-text">Kenneth Kahn, and Viyaj Saraswat, <b>Actors as a Special Case of Concurrent Constraint Programming</b></span> </li> </ol> <div class="mw-heading mw-heading2"><h2 id="参考文献"><span id=".E5.8F.82.E8.80.83.E6.96.87.E7.8C.AE"></span>参考文献</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=21" title="節を編集: 参考文献"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Alain Colmerauer and Philippe Roussel, <i>’The birth of Prolog'</i>, in The second ACM SIGPLAN conference on History of programming languages, p. 37-52, 1992.</li> <li>John McCarthy. <b>Programs with <a href="/wiki/%E5%B8%B8%E8%AD%98" title="常識">common sense</a></b> Symposium on Mechanization of Thought Processes. National Physical Laboratory. Teddington, England. 1958.</li> <li>Fisher Black. <b>A deductive question answering system</b> Harvard University. Thesis. 1964.</li> <li>James Slagle. <b>Experiments with a Deductive Question-Answering Program</b> CACM. December, 1965.</li> <li>Cordell Green. <b>Application of Theorem Proving to Problem Solving</b> IJCAI 1969.</li> <li>Carl Hewitt. <b>Planner: A Language for Proving Theorems in Robots</b> IJCAI 1969.</li> <li>Gerry Sussman and Terry Winograd. <b><a rel="nofollow" class="external text" href="https://hdl.handle.net/1721.1/5833">Micro-planner Reference Manual</a></b> AI Memo No, 203, MIT Project MAC, July 1970.</li> <li>Carl Hewitt. <b>Procedural Embedding of Knowledge In Planner</b> IJCAI 1971.</li> <li>Terry Winograd. <b><a rel="nofollow" class="external text" href="https://hdl.handle.net/1721.1/7095">Procedures as a Representation for Data in a Computer Program for Understanding Natural Language</a></b> MIT AI TR-235. January 1971.</li> <li>Bruce Anderson. <b>Documentation for LIB PICO-PLANNER</b> School of Artificial Intelligence, Edinburgh University. 1972</li> <li>Bruce Baumgart. <b>Micro-Planner Alternate Reference Manual</b> Stanford AI Lab Operating Note No. 67, April 1972.</li> <li>Julian Davies. <b>Popler 1.6 Reference Manual</b> University of Edinburgh, TPU Report No. 1, May 1973.</li> <li>Jeff Rulifson, Jan Derksen, and Richard Waldinger. <b>QA4, A Procedural Calculus for Intuitive Reasoning</b> SRI AI Center Technical Note 73, November 1973.</li> <li>Robert Kowalski <b>Predicate Logic as a Programming Language</b> Memo 70, Department of Artificial Intelligence, Edinburgh University. 1973.</li> <li>Drew McDermott and Gerry Sussman. <b><a rel="nofollow" class="external text" href="https://hdl.handle.net/1721.1/6204">The Conniver Reference Manual</a></b> MIT AI Memo 259A. January 1974.</li> <li>Earl Sacerdoti, <i>et al.</i> <b>QLISP: A Language for the Interactive Development of Complex Systems</b> AFIPS National Computer Conference. 1976.</li> <li>Bill Kornfeld and Carl Hewitt. <b>The Scientific Community Metaphor</b> IEEE Transactions on Systems, Man, and Cybernetics. January 1981.</li> <li>Bill Kornfeld. <b>The Use of Parallelism to Implement a Heuristic Search</b> IJCAI 1981.</li> <li>Bill Kornfeld. <b>Parallelism in Problem Solving</b> MIT EECS Doctoral Dissertation. August 1981.</li> <li>Bill Kornfeld. <b>Combinatorially Implosive Algorithms</b> CACM. 1982</li> <li>Carl Hewitt. <b>The Challenge of Open Systems</b> Byte Magazine. April 1985.</li> <li>Robert Kowalski. <b>The limitation of logic</b> Proceedings of the 1986 ACM fourteenth annual conference on Computer science.</li> <li>Ehud Shapiro (Editor). <b>Concurrent Prolog</b> MIT Press. 1987.</li> <li>Robert Kowalski. <b>The Early Years of Logic Programming</b> CACM. January 1988.</li> <li>Ehud Shapiro. <b>The family of concurrent logic programming languages</b> ACM Computing Surveys. September 1989.</li> <li>Carl Hewitt and Gul Agha. <b>Guarded Horn clause languages: are they deductive and Logical?</b> International Conference on Fifth Generation Computer Systems, Ohmsha 1988. Tokyo. Also in <i>Artificial Intelligence at MIT</i>, Vol. 2. MIT Press 1991.</li> <li>Shunichi Uchida and Kazuhiro Fuchi <b>Proceedings of the FGCS Project Evaluation Workshop</b> Institute for New Generation Computer Technology (ICOT). 1992.</li> <li>Carl Hewitt. <b>The repeated demise of logic programming and why it will be reincarnated</b> What Went Wrong and Why: Lessons from AI Research and Applications. Technical Report SS-06-08. AAAI Press. March 2006.</li> <li>J. W. Lloyd. <b>Foundations of Logic Programming</b> (2nd edition). Springer-Verlag 1987.</li> <li>Kenneth Kahn, and Viyaj Saraswat, <b>Actors as a Special Case of Concurrent Constraint Programming</b>, Xerox Technical Report, 1990.</li></ul> <div class="mw-heading mw-heading2"><h2 id="外部リンク"><span id=".E5.A4.96.E9.83.A8.E3.83.AA.E3.83.B3.E3.82.AF"></span>外部リンク</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;action=edit&amp;section=22" title="節を編集: 外部リンク"><span>編集</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a rel="nofollow" class="external text" href="http://vl.fmnet.info/logic-prog/"><i>Logic Programming</i> Virtual Library entry</a></li> <li><a rel="nofollow" class="external text" href="http://liinwww.ira.uka.de/bibliography/LogicProgramming/">Bibliographies on Logic Programming</a></li> <li><a rel="nofollow" class="external text" href="http://www.cs.kuleuven.be/~dtai/projects/ALP/">Association for Logic Programming (ALP)</a></li> <li><a rel="nofollow" class="external text" href="http://www.cs.kuleuven.be/~dtai/projects/ALP/TPLP/">Theory and Practice of Logic Programming</a> journal</li> <li><a rel="nofollow" class="external text" href="http://www.mozart-oz.org/documentation/tutorial/node12.html">Logic programming in Oz</a></li></ul> <div class="navbox" aria-labelledby="コンピュータ・プログラミング言語の関連項目" style="border-collapse:collapse;padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="background:transparent;color:inherit;min-width:100%;border-spacing:0px;border-collapse:separate"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div style="float:left;width:6em;text-align:left"><div class="noprint plainlinks navbar hlist" style="white-space:nowrap;font-size:60%;font-weight:normal;background-color:transparent;padding:0;color:#000;;border:none;"><ul style="display:inline"><li><a href="/wiki/Template:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E3%81%AE%E9%96%A2%E9%80%A3%E9%A0%85%E7%9B%AE" title="Template:プログラミング言語の関連項目"><span title="このテンプレートを表示します" style="font-size:125%;;;border:none;">表</span></a></li><li><a href="/w/index.php?title=Template%E2%80%90%E3%83%8E%E3%83%BC%E3%83%88:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E3%81%AE%E9%96%A2%E9%80%A3%E9%A0%85%E7%9B%AE&amp;action=edit&amp;redlink=1" class="new" title="「Template‐ノート:プログラミング言語の関連項目」 (存在しないページ)"><span title="このテンプレートのノートを表示します" style="font-size:125%;color:#002bb8;;;border:none;">話</span></a></li><li><a class="external text" href="https://ja.wikipedia.org/w/index.php?title=Template%3A%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E3%81%AE%E9%96%A2%E9%80%A3%E9%A0%85%E7%9B%AE&amp;action=edit"><span title="このテンプレートを編集します。保存の前にプレビューを忘れずに。" style="font-size:125%;color:#002bb8;;;border:none;">編</span></a></li><li><a class="external text" href="https://ja.wikipedia.org/w/index.php?title=Template%3A%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E3%81%AE%E9%96%A2%E9%80%A3%E9%A0%85%E7%9B%AE&amp;action=history"><span title="このテンプレートの過去の版を表示します" style="font-size:125%;color:#002bb8;;;border:none;">歴</span></a></li></ul></div></div><div id="コンピュータ・プログラミング言語の関連項目" style="font-size:110%;margin:0 6em">コンピュータ・<a href="/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="プログラミング言語">プログラミング言語</a>の関連項目</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">言語水準</th><td class="navbox-list navbox-odd hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"> <ul><li><a href="/wiki/%E6%A9%9F%E6%A2%B0%E8%AA%9E" title="機械語">機械語</a> (1G)</li> <li><a href="/wiki/%E4%BD%8E%E6%B0%B4%E6%BA%96%E8%A8%80%E8%AA%9E" title="低水準言語">低水準言語</a> (2G)</li> <li><a href="/wiki/%E9%AB%98%E6%B0%B4%E6%BA%96%E8%A8%80%E8%AA%9E" title="高水準言語">高水準言語</a> (3G)</li> <li><a href="/wiki/%E7%AC%AC%E5%9B%9B%E4%B8%96%E4%BB%A3%E8%A8%80%E8%AA%9E" title="第四世代言語">第四世代言語</a></li> <li><a href="/wiki/%E7%AC%AC%E4%BA%94%E4%B8%96%E4%BB%A3%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF" title="第五世代コンピュータ">第五世代言語</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">言語処理系</th><td class="navbox-list navbox-even hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"> <ul><li><a href="/wiki/%E3%82%A2%E3%82%BB%E3%83%B3%E3%83%96%E3%83%AA%E8%A8%80%E8%AA%9E" title="アセンブリ言語">アセンブラ</a></li> <li><a href="/wiki/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%97%E3%83%AA%E3%82%BF" title="インタプリタ">インタプリタ</a></li> <li><a href="/wiki/%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%A9" title="コンパイラ">コンパイラ</a></li> <li><a href="https://en.wikipedia.org/wiki/Translator_(computing)" class="extiw" title="en:Translator (computing)">トランスレータ</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">言語分類</th><td class="navbox-list navbox-odd hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"> <ul><li><a href="/wiki/%E3%83%9E%E3%83%AB%E3%83%81%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="マルチパラダイムプログラミング言語">マルチパラダイム言語</a></li> <li><a href="/wiki/%E5%91%BD%E4%BB%A4%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="命令型プログラミング">命令型言語</a></li> <li><a href="/wiki/%E5%AE%A3%E8%A8%80%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="宣言型プログラミング">宣言型言語</a></li> <li><a href="/wiki/%E9%9D%9E%E6%A7%8B%E9%80%A0%E5%8C%96%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="非構造化プログラミング">非構造化言語</a></li> <li><a href="/wiki/%E6%A7%8B%E9%80%A0%E5%8C%96%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="構造化プログラミング">構造化言語</a></li> <li><a href="/wiki/%E9%9D%9E%E6%89%8B%E7%B6%9A%E3%81%8D%E5%9E%8B%E8%A8%80%E8%AA%9E" title="非手続き型言語">非手続き型言語</a></li> <li><a href="/wiki/%E6%89%8B%E7%B6%9A%E3%81%8D%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="手続き型プログラミング">手続き型言語</a></li> <li><a href="/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="オブジェクト指向プログラミング">オブジェクト指向言語</a></li> <li><a href="/wiki/%E9%96%A2%E6%95%B0%E5%9E%8B%E8%A8%80%E8%AA%9E" class="mw-redirect" title="関数型言語">関数型言語</a></li> <li><a class="mw-selflink selflink">論理型言語</a></li> <li><a href="/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%95%E3%83%AD%E3%83%BC%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="データフロープログラミング">データフロー言語</a></li> <li><a href="/wiki/%E5%8B%95%E7%9A%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="動的プログラミング言語">ダイナミック言語</a></li> <li><a href="/wiki/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E8%A8%80%E8%AA%9E" title="スクリプト言語">スクリプト言語</a></li> <li><a href="/wiki/%E8%BB%BD%E9%87%8F%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="軽量プログラミング言語">軽量プログラミング言語</a></li> <li><a href="/wiki/%E3%83%93%E3%82%B8%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="ビジュアルプログラミング言語">ビジュアルプログラミング言語</a></li> <li><a href="/wiki/%E9%9B%A3%E8%A7%A3%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="難解プログラミング言語">難解プログラミング言語</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">その他</th><td class="navbox-list navbox-even hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"> <ul><li><a href="/wiki/%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3%E5%9B%BA%E6%9C%89%E8%A8%80%E8%AA%9E" title="ドメイン固有言語">ドメイン固有言語</a></li> <li><a href="/wiki/Job_Control_Language" title="Job Control Language">ジョブ制御言語</a></li> <li><a href="/wiki/%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E8%A8%80%E8%AA%9E" title="問い合わせ言語">問い合わせ言語</a></li> <li><a href="/wiki/%E3%83%9E%E3%83%BC%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E8%A8%80%E8%AA%9E" title="マークアップ言語">マークアップ言語</a></li> <li><a href="/wiki/%E5%BD%A2%E5%BC%8F%E8%A8%80%E8%AA%9E" title="形式言語">形式言語</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">関連項目</th><td class="navbox-list navbox-odd hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"> <ul><li><a href="/wiki/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E8%A8%80%E8%AA%9E" title="コンピュータ言語">コンピュータ言語</a></li> <li><a href="/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E4%B8%80%E8%A6%A7" title="プログラミング言語一覧">プログラミング言語一覧</a></li> <li><a href="/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E5%B9%B4%E8%A1%A8" title="プログラミング言語年表">プログラミング言語年表</a></li> <li><a href="/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0" title="プログラミングパラダイム">プログラミングパラダイム</a></li></ul> </div></td></tr></tbody></table></div> <div role="navigation" class="navbox authority-control" aria-label="Navbox" style="padding:3px"><table class="nowraplinks hlist navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Help:%E5%85%B8%E6%8B%A0%E7%AE%A1%E7%90%86" title="Help:典拠管理">典拠管理データベース</a>: 国立図書館 <span class="mw-valign-text-top noprint" typeof="mw:File/Frameless"><a href="https://www.wikidata.org/wiki/Q275603#identifiers" title="ウィキデータを編集"><img alt="ウィキデータを編集" src="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/15px-OOjs_UI_icon_edit-ltr-progressive.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/20px-OOjs_UI_icon_edit-ltr-progressive.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span></th><td class="navbox-list navbox-odd" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"> <ul><li><span class="uid"><a rel="nofollow" class="external text" href="http://catalogo.bne.es/uhtbin/authoritybrowse.cgi?action=display&amp;authority_id=XX550687">スペイン</a></span></li> <li><span class="uid"><a rel="nofollow" class="external text" href="https://catalogue.bnf.fr/ark:/12148/cb12067891q">フランス</a></span></li> <li><span class="uid"><a rel="nofollow" class="external text" href="https://data.bnf.fr/ark:/12148/cb12067891q">BnF data</a></span></li> <li><span class="uid"><a rel="nofollow" class="external text" href="https://d-nb.info/gnd/4195096-3">ドイツ</a></span></li> <li><span class="uid"><a rel="nofollow" class="external text" href="http://olduli.nli.org.il/F/?func=find-b&amp;local_base=NLX10&amp;find_code=UID&amp;request=987007553495005171">イスラエル</a></span></li> <li><span class="uid"><a rel="nofollow" class="external text" href="https://id.loc.gov/authorities/sh86003454">アメリカ</a></span></li> <li><span class="uid"><abbr title="logické programování"><a rel="nofollow" class="external text" href="https://aleph.nkp.cz/F/?func=find-c&amp;local_base=aut&amp;ccl_term=ica=ph122430&amp;CON_LNG=ENG">チェコ</a></abbr></span></li></ul> </div></td></tr></tbody></table></div> <!-- NewPP limit report Parsed by mw‐api‐int.codfw.main‐f6c7df9b8‐6hhkv Cached time: 20241103160126 Cache expiry: 2592000 Reduced expiry: false Complications: [show‐toc] CPU time usage: 0.303 seconds Real time usage: 0.392 seconds Preprocessor visited node count: 1685/1000000 Post‐expand include size: 57855/2097152 bytes Template argument size: 1892/2097152 bytes Highest expansion depth: 17/100 Expensive parser function count: 40/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 9042/5000000 bytes Lua time usage: 0.149/10.000 seconds Lua memory usage: 2029483/52428800 bytes Number of Wikibase entities loaded: 1/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 309.463 1 -total 40.20% 124.413 1 Template:プログラミング・パラダイム 39.24% 121.426 1 Template:Sidebar 23.90% 73.977 37 Template:仮リンク 16.92% 52.376 1 Template:Normdaten 11.71% 36.243 1 Template:Cite_journal 9.93% 30.734 1 Template:Citation/core 4.16% 12.882 3 Template:Main 3.35% 10.371 1 Template:プログラミング言語の関連項目 2.61% 8.067 1 Template:Navbox --> <!-- Saved in parser cache with key jawiki:pcache:idhash:794486-0!canonical and timestamp 20241103160126 and revision id 89962034. Rendering was triggered because: api-parse --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">「<a dir="ltr" href="https://ja.wikipedia.org/w/index.php?title=論理プログラミング&amp;oldid=89962034">https://ja.wikipedia.org/w/index.php?title=論理プログラミング&amp;oldid=89962034</a>」から取得</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/%E7%89%B9%E5%88%A5:%E3%82%AB%E3%83%86%E3%82%B4%E3%83%AA" title="特別:カテゴリ">カテゴリ</a>: <ul><li><a href="/wiki/Category:%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="Category:論理プログラミング">論理プログラミング</a></li><li><a href="/wiki/Category:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%91%E3%83%A9%E3%83%80%E3%82%A4%E3%83%A0" title="Category:プログラミングパラダイム">プログラミングパラダイム</a></li><li><a href="/wiki/Category:%E7%90%86%E8%AB%96%E8%A8%88%E7%AE%97%E6%A9%9F%E7%A7%91%E5%AD%A6" title="Category:理論計算機科学">理論計算機科学</a></li><li><a href="/wiki/Category:%E5%BD%A2%E5%BC%8F%E6%89%8B%E6%B3%95" title="Category:形式手法">形式手法</a></li><li><a href="/wiki/Category:%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6" title="Category:数理論理学">数理論理学</a></li><li><a href="/wiki/Category:%E4%BA%BA%E5%B7%A5%E7%9F%A5%E8%83%BD" title="Category:人工知能">人工知能</a></li><li><a href="/wiki/Category:%E6%95%B0%E5%AD%A6%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:数学に関する記事">数学に関する記事</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">隠しカテゴリ: <ul><li><a href="/wiki/Category:%E6%97%A5%E6%9C%AC%E8%AA%9E%E7%89%88%E8%A8%98%E4%BA%8B%E3%81%8C%E3%83%AA%E3%83%80%E3%82%A4%E3%83%AC%E3%82%AF%E3%83%88%E3%81%AE%E4%BB%AE%E3%83%AA%E3%83%B3%E3%82%AF%E3%82%92%E5%90%AB%E3%82%80%E8%A8%98%E4%BA%8B" title="Category:日本語版記事がリダイレクトの仮リンクを含む記事">日本語版記事がリダイレクトの仮リンクを含む記事</a></li><li><a href="/wiki/Category:BNE%E8%AD%98%E5%88%A5%E5%AD%90%E3%81%8C%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:BNE識別子が指定されている記事">BNE識別子が指定されている記事</a></li><li><a href="/wiki/Category:BNF%E8%AD%98%E5%88%A5%E5%AD%90%E3%81%8C%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:BNF識別子が指定されている記事">BNF識別子が指定されている記事</a></li><li><a href="/wiki/Category:BNFdata%E8%AD%98%E5%88%A5%E5%AD%90%E3%81%8C%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:BNFdata識別子が指定されている記事">BNFdata識別子が指定されている記事</a></li><li><a href="/wiki/Category:GND%E8%AD%98%E5%88%A5%E5%AD%90%E3%81%8C%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:GND識別子が指定されている記事">GND識別子が指定されている記事</a></li><li><a href="/wiki/Category:J9U%E8%AD%98%E5%88%A5%E5%AD%90%E3%81%8C%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:J9U識別子が指定されている記事">J9U識別子が指定されている記事</a></li><li><a href="/wiki/Category:LCCN%E8%AD%98%E5%88%A5%E5%AD%90%E3%81%8C%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:LCCN識別子が指定されている記事">LCCN識別子が指定されている記事</a></li><li><a href="/wiki/Category:NKC%E8%AD%98%E5%88%A5%E5%AD%90%E3%81%8C%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E8%A8%98%E4%BA%8B" title="Category:NKC識別子が指定されている記事">NKC識別子が指定されている記事</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> 最終更新 2022年6月10日 (金) 22:00 (日時は<a href="/wiki/%E7%89%B9%E5%88%A5:%E5%80%8B%E4%BA%BA%E8%A8%AD%E5%AE%9A#mw-prefsection-rendering" title="特別:個人設定">個人設定</a>で未設定ならば<a href="/wiki/%E5%8D%94%E5%AE%9A%E4%B8%96%E7%95%8C%E6%99%82" title="協定世界時">UTC</a>)。</li> <li id="footer-info-copyright">テキストは<a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.ja">クリエイティブ・コモンズ 表示-継承ライセンス</a>のもとで利用できます。追加の条件が適用される場合があります。詳細については<a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use">利用規約</a>を参照してください。</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy/ja">プライバシー・ポリシー</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:%E3%82%A6%E3%82%A3%E3%82%AD%E3%83%9A%E3%83%87%E3%82%A3%E3%82%A2%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6">ウィキペディアについて</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:%E5%85%8D%E8%B2%AC%E4%BA%8B%E9%A0%85">免責事項</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">行動規範</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">開発者</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/ja.wikipedia.org">統計</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookieに関する声明</a></li> <li id="footer-places-mobileview"><a href="//ja.m.wikipedia.org/w/index.php?title=%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&amp;mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">モバイルビュー</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-f69cdc8f6-mkx9z","wgBackendResponseTime":120,"wgPageParseReport":{"limitreport":{"cputime":"0.303","walltime":"0.392","ppvisitednodes":{"value":1685,"limit":1000000},"postexpandincludesize":{"value":57855,"limit":2097152},"templateargumentsize":{"value":1892,"limit":2097152},"expansiondepth":{"value":17,"limit":100},"expensivefunctioncount":{"value":40,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":9042,"limit":5000000},"entityaccesscount":{"value":1,"limit":400},"timingprofile":["100.00% 309.463 1 -total"," 40.20% 124.413 1 Template:プログラミング・パラダイム"," 39.24% 121.426 1 Template:Sidebar"," 23.90% 73.977 37 Template:仮リンク"," 16.92% 52.376 1 Template:Normdaten"," 11.71% 36.243 1 Template:Cite_journal"," 9.93% 30.734 1 Template:Citation/core"," 4.16% 12.882 3 Template:Main"," 3.35% 10.371 1 Template:プログラミング言語の関連項目"," 2.61% 8.067 1 Template:Navbox"]},"scribunto":{"limitreport-timeusage":{"value":"0.149","limit":"10.000"},"limitreport-memusage":{"value":2029483,"limit":52428800}},"cachereport":{"origin":"mw-api-int.codfw.main-f6c7df9b8-6hhkv","timestamp":"20241103160126","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"\u8ad6\u7406\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0","url":"https:\/\/ja.wikipedia.org\/wiki\/%E8%AB%96%E7%90%86%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0","sameAs":"http:\/\/www.wikidata.org\/entity\/Q275603","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q275603","author":{"@type":"Organization","name":"\u30a6\u30a3\u30ad\u30e1\u30c7\u30a3\u30a2\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3078\u306e\u8ca2\u732e\u8005"},"publisher":{"@type":"Organization","name":"\u30a6\u30a3\u30ad\u30e1\u30c7\u30a3\u30a2\u8ca1\u56e3","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2006-12-06T12:57:44Z","dateModified":"2022-06-10T22:00:55Z","headline":"\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3067\u306e\u6570\u7406\u8ad6\u7406\u5b66\u306e\u4f7f\u7528"}</script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10