Berekening van constructies

Het ontwerp van de structuren is een getypte lambda calculus van hogere orde die types zijn eersteklas waarden. Daardoor is het mogelijk, in het CvC de functies die gehele getallen integers, maar ook geheel types of types types definiëren.

Het CoC is sterk normaliseren, hoewel, volgens Gödel onvolledigheid stelling, is het onmogelijk om deze eigenschap in de CoC zelf aan te tonen, omdat het de samenhang inhoudt.

De CoC werd oorspronkelijk ontwikkeld door Thierry Coquand.

De CoC was oorspronkelijk de eerste versies van de Coq bewijs assistent. De volgende uitvoeringen zijn opgebouwd uit de berekening van inductieve constructies die een uitbreiding van de CoC die soorten inductieve data bevat. In de oorspronkelijke CoC, inductieve type gegevens moesten worden geëmuleerd met behulp van hun vernietiging functie.

Hoe het ontwerpen van constructies definiëren drie typen afhankelijkheden wordt de lambda kubus en is het gevolg van Henk Barendregt.

Grondslagen voor het ontwerp van constructies

Het ontwerpen van constructies kan worden beschouwd als een uitbreiding van de correspondentie Curry-Howard. De laatste combineert elke term van gewoon getypte lambda calculus bewijs in natuurlijke deductie in propositionele intuïtionisme, en vice versa. Het ontwerpen van constructies breidt dit isomorfisme het bewijs bij de berekening van intuitionnistic predikaten als geheel, die dus onder meer aangetoond gekwantificeerde formules.

Gebruiksvoorwaarden

Een berekening term constructies wordt gebouwd met behulp van de volgende regels:

  • is een term
  • is een term
  • Indien en zijn woorden, zijn:

Het ontwerp van de structuren heeft vijf soorten objecten:

  • bewijs, dat het vlak van de aard van de voorstellen;
  • de voorstellen, die ook worden genoemd kleine jongens;
  • predikaten, welke functies dat de voorstellen terug zijn;
  • brede soorten, welke soorten predikaten zijn;
  • T zelf, het type groot type.

Arresten

In het ontwerp van structuren, wordt een oordeel te typen gevolgtrekking:

dat kan worden gelezen als de betrokkenheid

Geldige uitspraken voor het ontwerp van structuren kan worden afgeleid uit een set van regels van gevolgtrekking. In het volgende, zullen we een reeks verzekeringsmaatschappijen betekenen en we schrijven K ofwel P of T. duiden


betekent dat de term is een bewijs van het voorstel in de context.

NB betekent "heeft een type, en heeft type", en het resultaat van de vervanging van de variabele met de term in de term.

Een gevolgtrekking regel is geschreven in de vorm

betekenis

Inference regels voor het ontwerp van constructies

Kind:


Variabele:


Abstractie:


Toepassing:

Conversie:

Definieer de logische operatoren

Het ontwerp van de structuren is zeer spaarzame bij het overwegen alleen de fundamentele operatoren: de enige logische operator is om voorstellen te vormen. Toch is dit enkel kan worden volstaan ​​om alle logische operatoren definiëren:

Definiëren data types

De soorten databank gebruikte computer kan worden gedefinieerd bij het ontwerpen van constructies: