100% de satisfacción garantizada Inmediatamente disponible después del pago Tanto en línea como en PDF No estas atado a nada 4.2 TrustPilot
logo-home
Resumen

Prolog samenvatting

Puntuación
4.5
(2)
Vendido
4
Páginas
8
Subido en
02-05-2021
Escrito en
2020/2021

Deze samenvatting is vooral een goed overzicht van alles wat er per week aan bod is gekomen. De standaardbegrippen en -concepten worden uitgelegd. Ook bepaalde operatoren of functies die veel worden gebruikt staan erin.

Institución
Grado









Ups! No podemos cargar tu documento ahora. Inténtalo de nuevo o contacta con soporte.

Escuela, estudio y materia

Institución
Estudio
Grado

Información del documento

Subido en
2 de mayo de 2021
Número de páginas
8
Escrito en
2020/2021
Tipo
Resumen

Temas

Vista previa del contenido

SAMENVATTING PROLOG Universiteit van Amsterdam (2020/2021)

Hoorcollege 1:
declaratief programmeren: speciferen wat er berekend moet worden (opdrachten van het specificeren van
het probleem en het oplossen ervan zijn gescheiden).
In een recursie regel roept het predicaat zichzelf weer aan.
Prolog termen zijn variabelen, atomic terms (numbers en atoms) of compound terms.
Compound terms bestaan uit een functor en een aantal argumenten die ingesloten zijn in haakjes (vb.
Bigger(horse, X)).
Ground terms: termen zonder variabelen
De head van een rule klopt als alle goals die in de body van die rule staan ook kloppen.
Matching: twee termen matchen als deze identiek zijn of als deze identiek gemaakt kunnen worden door
instantiatie van variabelen.

Hoorcollege 2:
head: het eerste element van een lijst
tail: de rest van een lijst
De tail moet altijd een lijst zijn, de head moet dat niet, maar het kan wel.

Base case: meest algemene regel/feit.
Bij recursies haal je vaak steeds beetjes weg die je aan het einde een voor een allemaal weer aan elkaar
plakt.

Boek H1:
Een programma bestaat uit clauses (feiten, regels en vragen).
Een procedure is een set van clauses over dezelfde relatie.

Boek H2:
Elke functor is gedefinieerd door naam en arity (aantal argumenten)
De matching operation neemt twee termen en probeert deze identiek te maken.
Conjunction: ,
disconjunction: ;

Built-in predicaten
write/1
append/3 (twee lijsten samenvoegen)
length/2
reverse/2 (een lijst omdraaien)
member/2
fail/0 (faalt altijd)
last/2
select/3 (haalt een element uit de lijst in het tweede argument en het derde argument is de rest van die
lijst)
permutation/2

Hoorcollege 3:
Voor arithmetic (rekenkundig) evaluation gebruk je de built-in is2/ operator. Deze werkt zo dat de term
rechts van de operator geeavalueerd wordt als rekenkundige expressie en vervolgens wordt het nummer
dat hier uit komt gematcht met de term links van de operator.
De term aan de linkerkant is bijna altijd een variabele.

Arithmetical functions:
max/2 () geeft het grootste nummer van twee nummers.
Sqrt/1 (wortel)

, mod/2 (deelt het linkercijfer door het rechtercijfer tot het laatste gehele getal dat het kan geven, het
resultaat is hetgeen dat over blijft). Vb: (47 mod 7) = 5.
// (delen door)
round/1 (van een float naar de dichtsbijzijnde integer)
** (tot de macht van)

arithmetic relations:
=:= arithmetic equality (hiermee wil je de gelijkheid van twee rekenkundige expressies vergelijken)
=\= arithmetic inequality
> greater than >= greater than or equal
< less than =< less than or equal

= kan je gebruiken voor matching

is/2 moet niet gebruikt worden om gelijkheid van twee rekenkundige expressies te checken.

Hoorcollege 4:
Gebruik van operators maken sommige dingen makkelijker voor ons om te lezen.
Precedence (tussen 0 en 1200) zegt iets over hoe bindend een operator is.
Hoe lager de precedence, hoe sterker de operator bindt.
Als de principal functor niet (geschreven als) een operator is of als de term in haakjes is ingesloten, dan is
de precedence 0.
Drie types operators: infix (3 + 5), prefix (-7), postfix (6!).
Een standaard prolog implementatie heeft een associativiteit naar links.

Operator patterns:
• yfx: infix, left-associative (+, -, *)
• xfy: infix, right-associative (,)
• xfx: infix, non-associative (=, is, <)
• fy: prefix, associative (-5)
• fx: prefix, non-associative (?-, :-)
• yf: postfix, associative
• xf: postfix, non-associative
y zegt wat over naar welke kant de associativiteit is.

Met de built-in predicate current_op(Precedence, Associativity, Operator) kan je gegevens van een operator
checken.
:- op(200, fy, small). (zo definieer je een operator)
met =../2 kan je een lijst maken waarvan de head de functor van een term is en de tail zijn de argumenten
ervan.

Een operator is well-defined wanneer er een associativity is.
Wanneer Prolog niet goed weet hoe deze een bepaalde term moet bekijken is er sprake van ambiguity.

Week 3
choice-points: subgoals die op verschillende manieren kunnen slagen.
Wanneer Prolog een bepaald doel wilt laten slagen, houdt deze alle choice-points bij, zodra een subgoal
faalt, gaat Prolog terug naar het meest recente choice-point.
Enforced backtracking: op ; klikken, zodat prolog alternatieve antwoorden geeft.
(Je zegt dan eigenlijk tegen Prolog van doe alsof het vorige antwoord niet klopte en geef me een ander
antwoord)

Voorkom dat Prolog gaat backtracken om foute antwoorden te vermijden en efficientie te verbeteren.
$3.62
Accede al documento completo:

100% de satisfacción garantizada
Inmediatamente disponible después del pago
Tanto en línea como en PDF
No estas atado a nada


Documento también disponible en un lote

Reseñas de compradores verificados

Se muestran los 2 comentarios
2 año hace

4 año hace

4.5

2 reseñas

5
1
4
1
3
0
2
0
1
0
Reseñas confiables sobre Stuvia

Todas las reseñas las realizan usuarios reales de Stuvia después de compras verificadas.

Conoce al vendedor

Seller avatar
Los indicadores de reputación están sujetos a la cantidad de artículos vendidos por una tarifa y las reseñas que ha recibido por esos documentos. Hay tres niveles: Bronce, Plata y Oro. Cuanto mayor reputación, más podrás confiar en la calidad del trabajo del vendedor.
dalayna03 Universiteit van Amsterdam
Seguir Necesitas iniciar sesión para seguir a otros usuarios o asignaturas
Vendido
76
Miembro desde
4 año
Número de seguidores
50
Documentos
6
Última venta
1 mes hace

3.9

13 reseñas

5
5
4
3
3
4
2
1
1
0

Recientemente visto por ti

Por qué los estudiantes eligen Stuvia

Creado por compañeros estudiantes, verificado por reseñas

Calidad en la que puedes confiar: escrito por estudiantes que aprobaron y evaluado por otros que han usado estos resúmenes.

¿No estás satisfecho? Elige otro documento

¡No te preocupes! Puedes elegir directamente otro documento que se ajuste mejor a lo que buscas.

Paga como quieras, empieza a estudiar al instante

Sin suscripción, sin compromisos. Paga como estés acostumbrado con tarjeta de crédito y descarga tu documento PDF inmediatamente.

Student with book image

“Comprado, descargado y aprobado. Así de fácil puede ser.”

Alisha Student

Preguntas frecuentes