Share to: share facebook share twitter share wa share telegram print page

Abductive logic programming

Abductive logic programming (ALP) is a high-level knowledge-representation framework that can be used to solve problems declaratively, based on abductive reasoning. It extends normal logic programming by allowing some predicates to be incompletely defined, declared as abducible predicates. Problem solving is effected by deriving hypotheses on these abducible predicates (abductive hypotheses) as solutions of problems to be solved. These problems can be either observations that need to be explained (as in classical abduction) or goals to be achieved (as in normal logic programming). It can be used to solve problems in diagnosis, planning, natural language and machine learning. It has also been used to interpret negation as failure as a form of abductive reasoning.

Syntax

Abductive logic programs have three components, where:

  • P is a logic program of exactly the same form as in logic programming
  • A is a set of predicate names, called the abducible predicates
  • IC is a set of first-order classical formulae.

Normally, the logic program P does not contain any clauses whose head (or conclusion) refers to an abducible predicate. (This restriction can be made without loss of generality.) Also in practice, many times, the integrity constraints in IC are often restricted to the form of denials, i.e. clauses of the form:

   false:- A1,...,An, not B1, ..., not Bm.

Such a constraint means that it is not possible for all A1,...,An to be true and at the same time all of B1,...,Bm to be false.

Informal meaning and problem solving

The clauses in P define a set of non-abducible predicates and through this they provide a description (or model) of the problem domain. The integrity constraints in IC specify general properties of the problem domain that need to be respected in any solution of a problem.

A problem, G, which expresses either an observation that needs to be explained or a goal that is desired, is represented by a conjunction of positive and negative (NAF) literals. Such problems are solved by computing "abductive explanations" of G.

An abductive explanation of a problem G is a set of positive (and sometimes also negative) ground instances of the abducible predicates, such that, when these are added to the logic program P, the problem G and the integrity constraints IC both hold. Thus abductive explanations extend the logic program P by the addition of full or partial definitions of the abducible predicates. In this way, abductive explanations form solutions of the problem according to the description of the problem domain in P and IC. The extension or completion of the problem description given by the abductive explanations provides new information, hitherto not contained in the solution to the problem. Quality criteria to prefer one solution over another, often expressed via integrity constraints, can be applied to select specific abductive explanations of the problem G.

Computation in ALP combines the backwards reasoning of normal logic programming (to reduce problems to sub-problems) with a kind of integrity checking to show that the abductive explanations satisfy the integrity constraints.

The following two examples, written in simple structured English rather than in the strict syntax of ALP, illustrate the notion of abductive explanation in ALP and its relation to problem solving.

Example 1

The abductive logic program, , has in the following sentences:

  Grass is wet if it rained.
Grass is wet if the sprinkler was on.
The sun was shining.

The abducible predicates in are "it rained" and "the sprinkler was on" and the only integrity constraint in is:

  false if it rained and the sun was shining.

The observation that the grass is wet has two potential explanations, "it rained" and "the sprinkler was on", which entail the observation. However, only the second potential explanation, "the sprinkler was on", satisfies the integrity constraint.

Example 2

Consider the abductive logic program consisting of the following (simplified) clauses:

  X is a citizen if X is born in the USA.
X is a citizen if X is born outside the USA and X is a resident of the USA and X is naturalized.
X is a citizen if X is born outside the USA and Y is the mother of X and Y is a citizen and X is registered.
Mary is the mother of John.
Mary is a citizen.

together with the five abducible predicates, "is born in the USA", "is born outside the USA", "is a resident of the USA", "is naturalized" and "is registered" and the integrity constraint:

  false if John is a resident of the USA.

The goal "John is citizen" has two abductive solutions, one of which is "John is born in the USA", the other of which is "John is born outside the USA" and "John is registered". The potential solution of becoming a citizen by residence and naturalization fails because it violates the integrity constraint.

A more complex example that is also written in the more formal syntax of ALP is the following.

Example 3

The abductive logic program below describes a simple model of the lactose metabolism of the bacterium E. coli. The program, P, describes (in its first rule) that E. coli can feed on the sugar lactose if it makes two enzymes permease and galactosidase. Like all enzymes, these are made if they are coded by a gene (Gene) that is expressed (described by the second rule). The two enzymes of permease and galactosidase are coded by two genes, lac(y) and lac(z) respectively (stated in the fifth and sixth rule of the program), in a cluster of genes (lac(X)) – called an operon – that is expressed when the amounts (amt) of glucose are low and lactose are high or when they are both at medium level (see the fourth and fifth rule). The abducibles, A, declare all ground instances of the predicates "amount" as assumable. This reflects that in the model the amounts at any time of the various substances are unknown. This is incomplete information that is to be determined in each problem case. The integrity constraints, IC, state that the amount of any substance (S) can only take one value.

Domain knowledge (P)
   feed(lactose) :- make(permease), make(galactosidase).
   make(Enzyme) :- code(Gene, Enzyme), express(Gene).
   express(lac(X)) :- amount(glucose, low), amount(lactose, hi).
   express(lac(X)) :- amount(glucose, medium), amount(lactose, medium).
   code(lac(y), permease).
   code(lac(z), galactosidase).
   temperature(low) :- amount(glucose, low).
Integrity constraints (IC)
   false :- amount(S, V1), amount(S, V2), V1  V2.
Abducibles (A)
   abducible_predicate(amount).

The problem goal is . This can arise either as an observation to be explained or as a state of affairs to be achieved by finding a plan. This goal has two abductive explanations:

The decision which of the two to adopt could depend on additional information that is available, e.g. it may be known that when the level of glucose is low then the organism exhibits a certain behaviour – in the model such additional information is that the temperature of the organism is low – and by observing the truth or falsity of this it is possible to choose the first or second explanation respectively.

Once an explanation has been chosen, then this becomes part of the theory, which can be used to draw new conclusions. The explanation and more generally these new conclusions form the solution of the problem.

Default reasoning in ALP

As shown in the Theorist system,[1][2] abduction can also be used for default reasoning. Moreover, abduction in ALP can simulate negation as failure in normal logic programming.

Consider the classic example of reasoning by default that a bird can fly if it cannot be shown that the bird is abnormal. Here is a variant of the example using negation as failure:

canfly(X) :- bird(X), not(abnormal_flying_bird(X)).
abnormal_flying_bird(X):- wounded(X).
bird(john).
bird(mary).
wounded(john).

Here is the same example using an abducible predicate normal_flying_bird(_) with an integrity constraint in ALP:

canfly(X) :- bird(X), normal_flying_bird(X).
false :- normal_flying_bird(X), wounded(X).
bird(john).
bird(mary).
wounded(john).

The abducible predicate normal_flying_bird(_), is the contrary of the predicate abnormal_flying_bird(_).

Using abduction in ALP it is possible to conclude canfly(mary) under the assumption normal_flying_bird(mary). The conclusion can be derived from the assumption because it cannot be shown that the integrity constraint is violated, which is because it cannot be shown that wounded(mary). In contrast, it is not possible to conclude canfly(john), because the assumption normal_flying_bird(john) together with the fact wounded(john) violates the integrity constraint. This manner of reasoning in ALP simulates reasoning with negation as failure.[3]

Conversely, it is possible to simulate abduction in ALP using negation as failure with the stable model semantics.[4] This can be done by adding, for every abducible predicate p, an additional contrary predicate negp, and a pair of clauses:

p :- not(negp).
negp :- not(p).

This pair of clauses has two stable models, one in which p, is true, and the other in which negp, is true. This technique for simulating abduction is commonly used in answer set programming to solve problems using a generate and test methodology.

Formal semantics

The formal semantics of the central notion of an abductive explanation in ALP can be defined in the following way.

Given an abductive logic program, , an abductive explanation for a problem is a set of ground atoms on abducible predicates such that:

  • is consistent

This definition leaves open the choice of the underlying semantics of logic programming through which we give the exact meaning of the entailment relation and the notion of consistency of the (extended) logic programs. Any of the different semantics of logic programming such as the completion, stable or well-founded semantics can (and have been used in practice) to give different notions of abductive explanations and thus different forms of ALP frameworks.

The above definition takes a particular view on the formalization of the role of the integrity constraints as restrictions on the possible abductive solutions. It requires that these are entailed by the logic program extended with an abductive solution, thus meaning that in any model of the extended logic program (which one can think of as an ensuing world given ) the requirements of the integrity constraints are met. In some cases this may be unnecessarily strong and the weaker requirement of consistency, namely that is consistent, can be sufficient, meaning that there exists at least one model (possible ensuing world) of the extended program where the integrity constraints hold. In practice, in many cases, these two ways of formalizing the role of the integrity constraints coincide as the logic program and its extensions always have a unique model. Many of the ALP systems use the entailment view of the integrity constraints as this can be easily implemented without the need for any extra specialized procedures for the satisfaction of the integrity constraints since this view treats the constraints in the same way as the problem goal. In many practical cases, the third condition in this formal definition of an abductive explanation in ALP is either trivially satisfied or it is contained in the second condition via the use of specific integrity constraints that capture consistency.

Implementation and systems

Most of the implementations of ALP extend the SLD resolution-based computational model of logic programming. ALP can also be implemented by means of its link with Answer Set Programming (ASP), where the ASP systems can be employed. Examples of systems of the former approach are ACLP, A-system, CIFF, SCIFF, ABDUAL and ProLogICA.

See also

Notes

  1. ^ Poole, David; Goebel, Randy; Aleliunas, Romas (Feb 1986). Theorist: A Logical Reasoning System for Defaults and Diagnosis (PDF) (Research Report). Univ. Waterloo.
  2. ^ Poole, David; Goebel, Randy; Aleliunas, Romas (1987). "Theorist: A Logical Reasoning System for Defaults and Diagnosis". In Nick J. Cercone; Gordon McCalla (eds.). The Knowledge Frontier – Essays in the Representation of Knowledge. Symbolic Computation (1st ed.). New York, NY: Springer. pp. 331–352. doi:10.1007/978-1-4612-4792-0. ISBN 978-1-4612-9158-9. S2CID 38209923.
  3. ^ Eshghi, K. and Kowalski, R.A., 1989, June. Abduction Compared with Negation by Failure. In ICLP (Vol. 89, pp. 234-255).
  4. ^ Kakas, A.C., Kowalski, R.A. and Toni, F., 1992. Abductive logic programming. Journal of logic and computation, 2(6), pp.719-770.

References

Read other articles:

Halil KutKut sebelum PD1 berakhirJulukanPahlawan KutKutülamare KahramanıLahir1881 (1881)Yenimahalle, Istanbul, Kesultanan UtsmaniyahMeninggal20 Agustus 1957(1957-08-20) (umur 75–76)Konstantinopel, TurkiPengabdian Kesultanan Utsmaniyah TurkiPangkatMayor JenderalKesatuanPasukan KeenamPerang/pertempuranPerang BalkanPerang Italia-TurkiPerang Dunia I Kampanye Mesopotamia Pertempuran Hanna Pertempuran Wadi Genosida Armenia Pengepungan Kut Halil Kut (1881 – 20 Agustus 1957) …

Dheere DheereLagu oleh Yo Yo Honey SinghDirilis31 Agustus 2015 (2015-08-31)FormatUnduhan digitalGenre Bollywood Desi Hip Hop Durasi3:32 (Singel)5:04 (video musik)LabelT-SeriesPenciptaYo Yo Honey SinghProduserBhushan Kumar Dheere Dheere adalah sebuah lagu karya artis rekaman asal India Yo Yo Honey Singh. Ia merekam lagunya di iPhone dan mengkompisisikannya di Laptopnya saat terserang Bipolar. Rekaman tersebut dirilis pada 31 Agustus 2015 sebagai sebuah singel di Hotstar.[1] Karya ter…

Alun-Alun SegamatDataran SegamatInformasi umumJenisalun-alunLokasiSegamat, Johor, MalaysiaKoordinat2°30′39.3″N 102°48′53.3″E / 2.510917°N 102.814806°E / 2.510917; 102.814806Koordinat: 2°30′39.3″N 102°48′53.3″E / 2.510917°N 102.814806°E / 2.510917; 102.814806Mulai dibangun1996 Alun-Alun Segamat (Melayu: Dataran Segamatcode: ms is deprecated ) adalah sebuah alun-alun di Segamat, Johor, Malaysia. Sejarah Alun-alun ini dibangun …

Cari artikel bahasa  Cari berdasarkan kode ISO 639 (Uji coba)  Kolom pencarian ini hanya didukung oleh beberapa antarmuka Halaman bahasa acak Bahasa Arab Jebli Jebelia Dituturkan diMarokoEtnisJebala, Ghomara, Sanhajas de SrayrPenutur Rumpun bahasaAfro-Asia SemitSemit TengahArabArab MaghribPra-HilalBahasa Arab Jebli Aspek ketatabahasaanTipologibahasa inflektifsubjek–predikat–objekbahasa nominatif–akusatifbahasa silabika [sunting di Wikidata]Kode bahasaISO 639-3(terma…

Artikel ini perlu diwikifikasi agar memenuhi standar kualitas Wikipedia. Anda dapat memberikan bantuan berupa penambahan pranala dalam, atau dengan merapikan tata letak dari artikel ini. Untuk keterangan lebih lanjut, klik [tampil] di bagian kanan. Mengganti markah HTML dengan markah wiki bila dimungkinkan. Tambahkan pranala wiki. Bila dirasa perlu, buatlah pautan ke artikel wiki lainnya dengan cara menambahkan [[ dan ]] pada kata yang bersangkutan (lihat WP:LINK untuk keterangan lebih lanjut). …

Pour les articles homonymes, voir Renaison (homonymie). Renaison La mairie. Blason Administration Pays France Région Auvergne-Rhône-Alpes Département Loire Arrondissement Roanne Intercommunalité Roannais Agglomération Maire Mandat Laurent Beluze 2020-2026 Code postal 42370 Code commune 42182 Démographie Gentilé Renaisonnais[1] Populationmunicipale 3 200 hab. (2021 ) Densité 139 hab./km2 Géographie Coordonnées 46° 03′ 10″ nord, 3° 55′ 32…

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article contains content that is written like an advertisement. Please help improve it by removing promotional content and inappropriate external links, and by adding encyclopedic content written from a neutral point of view. (May 2021) (Learn how and when to remove this template message) This article needs additional citations for verific…

County in Minnesota, United States County in MinnesotaLac qui Parle CountyCountyLac qui Parle County CourthouseLocation within the U.S. state of MinnesotaMinnesota's location within the U.S.Coordinates: 45°00′N 96°11′W / 45°N 96.18°W / 45; -96.18Country United StatesState MinnesotaFoundedMarch 6, 1871[1]Named forLake that speaks FrenchSeatMadisonLargest cityDawsonArea • Total778 sq mi (2,020 km2) • Land765&#…

Taman Nasional SimilajauSMLJ National Park, MalaysiaLetak di MalaysiaLetakDivisi Bintulu, Sarawak, MalaysiaKota terdekatBintuluLuas8.996 km2 (2.223.000 ekar)Didirikan1976http://www.sarawakforestry.com/htm/snp-np-siminajau.html Taman Nasional Similajau (Taman Nasional SMLJ, Malaysia) adalah sebuah taman nasional di Divisi Bintulu, Sarawak, Malaysia. Tempat tersebut berjarak sekitar 30 kilometer (19 mi) dari Bintulu. Referensi Pranala luar Tourism Malaysia - Similajau National Park Diars…

Olympic venue in Athens, Greece The Markopoulo Olympic Shooting Centre was the site of the shooting events at the 2004 Summer Olympics in Athens, Greece.[1] The venue is located in Markópoulo, on the outskirts of the eastern suburbs of Athens. It has a seating capacity of 4,000, though a public capacity of only 2,330 for the Olympics. The venue was completed in March, 2004 and officially opened on August 2, 2004, shortly before the beginning of the Olympics. The facility is now in the p…

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Februari 2023. US Ben GuerdaneBerkas:US Ben Guerdane logo.pngNama lengkapUnion sportive de Ben GuerdaneBerdiriMarch 1, 1936StadionStade du 7 MarsBen Gardane, Tunisia(Kapasitas: 10,000)Ketua Jlidi El OrfManajer Hakim AounLigaCLP-12022/23ke-5 Kostum kandang Kostum tandan…

Pour les articles homonymes, voir ASC. Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus. Cet article ne cite pas suffisamment ses sources (janvier 2021). Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références ». En pratique : Que…

Pour les articles homonymes, voir R30 et DCM. Dichlorométhane   Structure du dichlorométhane Identification Nom UICPA dichlorométhane Synonymes chlorure de méthylèneDCM No CAS 75-09-2 No ECHA 100.000.763 No CE 200-838-9 No RTECS PA8050000 PubChem 6344 SMILES C(Cl)Cl PubChem, vue 3D InChI InChI : vue 3D InChI=1/CH2Cl2/c2-1-3/h1H2 Apparence liquide incolore, d'odeur caractéristique[1]. Propriétés chimiques Formule CH2Cl2  [Isomères] Masse molaire[3] 84,933&…

Introdcomune(IT) Comune di Introd(FR) Commune d'Introd Introd – Veduta LocalizzazioneStato Italia Regione Valle d'Aosta ProvinciaNon presente AmministrazioneSindacoVittorio Stefano Anglesio (Union Valdôtaine) dal 24-5-2010 Lingue ufficialiFrancese, italiano TerritorioCoordinate45°41′23.88″N 7°11′15.44″E / 45.689967°N 7.187622°E45.689967; 7.187622 (Introd)Coordinate: 45°41′23.88″N 7°11′15.44″E / 45.689967°N 7.187622…

Giobbe1º Patriarca di Mosca e di tutte le RussieElezione17 gennaio 1589 Intronizzazione23 gennaio 1589 Fine patriarcato24 giugno 1605 PredecessoreNessuno SuccessoreIgnazio (illegittimo)  Consacrazione episcopale16 aprile 1581da Dionisio di Mosca  NomeIvan NascitaStarica1525 MorteStarica19 giugno 1607 SepolturaCattedrale della Dormizione Manuale San Giobbe di MoscaSan Giobbe rifiuta di riconoscere il Falso Dimitri I come figlio di Ivan il Terribile Patriarca  NascitaStarica, …

† Человек прямоходящий Научная классификация Домен:ЭукариотыЦарство:ЖивотныеПодцарство:ЭуметазоиБез ранга:Двусторонне-симметричныеБез ранга:ВторичноротыеТип:ХордовыеПодтип:ПозвоночныеИнфратип:ЧелюстноротыеНадкласс:ЧетвероногиеКлада:АмниотыКлада:СинапсидыКл…

Agus Dwi Putranto Informasi pribadiLahir27 Agustus 1959 (umur 64)Pemalang, Jawa TengahKebangsaanIndonesiaAlma materAkademi Angkatan Udara (1983)Karier militerPihak IndonesiaDinas/cabang TNI Angkatan UdaraMasa dinas1983–2017Pangkat Marsekal Muda TNISatuanKorps Penerbang (Angkut)Pertempuran/perangOperasi SerojaSunting kotak info • L • B Marsekal Muda TNI (Purn.) Agus Dwi Putranto (lahir 27 Agustus 1959) adalah seorang perwira tinggi TNI Angkatan Udara lulusan Akademi…

1958 film by Bimal Roy For the Telugu film, see Madhumati (2013 film). MadhumatiTheatrical posterDirected byBimal RoyScreenplay byRajinder Singh BediStory byRajinder Singh BediRitwik GhatakProduced byBimal RoyStarringVyjayanthimalaDilip KumarPranJohnny WalkerCinematographyDilip GuptaEdited byHrishikesh MukherjeeMusic bySalil ChowdhuryProductioncompanyBimal Roy ProductionsRelease date 12 September 1958 (1958-09-12) Running time166 minutes[1]CountryIndiaLanguageHindiBudgetes…

Old Carthusians F.C.Calcio Segni distintiviUniformi di gara Casa Trasferta Dati societariCittàGodalming, Waverley, Surrey Nazione Inghilterra ConfederazioneUEFA Federazione Football Association CampionatoArthurian League Fondazione1876 Stadio( posti) Sito webwww.oldcarthusiansfc.co.uk Palmarès Coppe d'Inghilterra1 Si invita a seguire il modello di voce L'Old Carthusians Football Club è una società calcistica inglese i cui calciatori sono tutti ex alunni della Charterhouse School delle c…

TetrisHenk Rogers (Taron Egerton) in una scena del filmLingua originaleinglese, russo Paese di produzioneStati Uniti d'America, Regno Unito Anno2023 Durata118 min Generebiografico, drammatico, thriller, storico, spionaggio RegiaJon S. Baird SoggettoNoah Pink SceneggiaturaNoah Pink ProduttoreMatthew Vaughn, Gillian Berrie, Claudia Schiffer, Len Blavatnik, Gregor Cameron Produttore esecutivoIain Mackenzie Casa di produzioneAI-Film, Apple TV+, Marv Films Distribuzione in italian…

Kembali kehalaman sebelumnya