Wat is logisch programmeren?
Logisch programmeren is een type computerprogrammering waarin de programmeur de computerinstructies moet geven over het nemen van beslissingen met wiskundige logica, zoals het gebruik van een wiskundig algoritme. Computerprogramma's bestaan uit code die de computer vertelt wat te doen. Uiteindelijk zal de computer echter een instantie tegenkomen waarin hij een beslissing moet nemen over hoe verder te gaan en zonder enige informatie over hoe dit te doen, kon hij de huidige functie niet voltooien. Logica -programmering gaat over dit soort beslissingen en geeft instructies aan de computer, zodat het een "logische" beslissing kan nemen over hoe het beste op een bepaalde situatie kan reageren. Om logisch programmeren te laten werken, moet de programmeur die de code schrijft ervoor zorgen dat haar verklaringen logisch zijn en waar zijn, dus logisch zijn, en een computerprogramma dat bekend staat als een stelling-onderzocht is vereist om beslissingen te nemen op basis van de verklaringen die het in de code van de programmeur ontmoet.
Een stelling-gedroog verwijst naar een computerprogramma dat is ontworpen om wiskundige uitspraken op te lossen die bekend staan als theorems. Stellingen zijn verklaringen die waar worden aangetoond op basis van eerdere verklaringen. In logische programmering werkt de stelling-gedroog samen met de verklaringen die door de computerprogrammeur zijn gemaakt om conclusies te trekken. Als de code bijvoorbeeld stelt dat A gelijk is aan B en B gelijk is aan C, zal de stellingsprover de logische conclusie treffen dat A gelijk moet zijn aan C. Dit proces is anders dan de programmeur die de computer eenvoudig vertelt in de code dat A gelijk is aan C omdat het computerprogramma deze conclusie moet trekken met behulp van de theorem-prover en de oorspronkelijke verklaringen van de programmeur en de oorspronkelijke instructies van de programmeur in de code.
In theorie, om logische programmering te laten werken, hoeft de programmeur alleen ervoor te zorgen dat haar verklaringen correct zijn en de maker van de stelling moet ervoor zorgen dat het programma uitspraken kan lezen en het meest EF kan makenficiënte beslissingen op basis van hen. De mogelijkheid om een efficiënte beslissing te nemen wordt een computerfunctioneren 'logisch' genoemd. In werkelijkheid overlappen de twee werkgebieden en degenen die logische programmering uitvoeren, moeten de code vaak veranderen en manipuleren op basis van hoe de stellingen werkt om de resultaten te bereiken die ze willen. Simpelweg nauwkeurige uitspraken over hoe een bepaalde beslissing te nemen mogelijk niet voldoende is om de computer de juiste functie uit te voeren, en de programmeur zal haar code moeten testen en dienovereenkomstig aanpassingen maken.
Voor logische programmering om te werken, is het ook afhankelijk van achterwaartse redenering. In achterwaartse redenering komt het programma tot conclusies door te kijken naar een reeks gegevens en te werken vanuit algemene bekende verklaringen om meer geavanceerde conclusies te trekken. Het programma weet misschien dat twee stukjes informatie waar zijn, en het zal concluderen dat, aangezien die twee stukjes informatie waar zijn, dat betekent dat een derde stuk informatie ook waar is. Het coNTINUT dit proces totdat het een logische conclusie bereikt op basis van de informatie die het heeft gegeven. Vanwege de manier waarop het werkt, is logische programmering gebouwd op de declaratieve representatietaal, wat betekent dat het programma de computer vertelt wat het moet doen, maar laat het aan de stelling over om de meest logische of efficiënte manier te bepalen om de gevraagde procedure uit te voeren.