Tipi e linguaggi di programmazione si focalizzano un po 'sul sottotipo, ma per quanto ne so, il sottotipo non sembra particolarmente fondamentale. Il sottotipo ti dà qualcosa in più rispetto ai tipi dipendenti? Lavorare con tipi dipendenti è destinato ad essere più lavoro, quindi posso capire perché i sottotipi potrebbero …
Ispirato dalle vaste gerarchie presenti nella teoria della complessità, mi chiedevo se tali gerarchie fossero presenti anche per i sistemi di tipi. Tuttavia, i due esempi che ho trovato finora sono entrambi più simili a liste di controllo (con caratteristiche ortogonali) piuttosto che a gerarchie (con sistemi di tipo sempre …
Sto progettando un semplice linguaggio di programmazione funzionale tipicamente statico come esperienza di apprendimento. Sembra che il sistema di tipi che ho implementato finora potrebbe (con un po 'di lavoro extra) incorporare tipi di intersezione e unione, ad esempio potresti avere: <Union String Integer> <Union Integer Foo> L'intersezione dei due …
In una categoria chiusa cartesiana ( CCC ), esistono i cosiddetti oggetti esponenziali , scritte . Quando un CCC è considerato come un modello di semplicità digitato λ -calcolo , un oggetto esponenziale come B A caratterizza lo spazio funzione dal tipo A al tipo B . Un oggetto esponenziale …
Qualcuno potrebbe essere in grado di spiegare la differenza tra: Tipi di dati algebrici (con cui ho abbastanza familiarità) Tipi di dati algebrici generalizzati (cosa li rende generalizzati?) Tipi induttivi (ad es. Coq) (Soprattutto tipi induttivi.) Grazie.
Esiste un calcolo lambda tipizzato in cui la logica corrispondente nella corrispondenza Curry-Howard è coerente e dove esistono espressioni lambda tipizzabili per ogni funzione calcolabile? Questa è certamente una domanda imprecisa, mancante di una definizione precisa di "calcolo lambda tipizzato". Mi chiedo sostanzialmente se ci sono (a) esempi noti di …
Pierce (2002) introduce la relazione di battitura a pagina 92 scrivendo: La relazione di battitura per le espressioni aritmetiche, scritta "t: T", è definita da un insieme di regole di inferenza che assegnano i tipi ai termini e la nota dice: Il simbolo viene spesso usato al posto di:. La …
In un recente thread sulla mailing list di Agda, è emersa la questione delle leggi , in cui Peter Hancock ha fatto un'osservazione stimolante .ηη\eta La mia comprensione è che le leggi di tipi negativi, vale a dire. connettivi le cui regole di introduzione sono invertibili. Per disabilitare per le …
C'è un modo per dimostrare il seguente teorema in Coq? Theorem bool_pirrel : forall (b : bool) (p1 p2 : b = true), p1 = p2. EDIT : un tentativo di dare una breve spiegazione di "che prova irrilevanza è" (correggimi qualcuno se sbaglio o non sono preciso) L'idea di …
Qualcuno può spiegare brevemente (se possibile!) O riferirmi a un riferimento, riassumendo le differenze tra il calcolo lambda non tipizzato e i calcoli lambda tipizzati più comuni? In particolare cerco dichiarazioni sulla loro potenza espressiva, equivalenze a sistemi logici / aritmetici o metodi di calcolo e analogie con i linguaggi …
Questa pagina afferma che molte lingue non usano il sottotipo implicito (equivalenza strutturale), preferendo il sottotipo esplicito / dichiarato (equivalenza di dichiarazione) Ho principalmente usato linguaggi di programmazione che usano il sottotipo esplicito . Quali sono i vantaggi del sottotipo implicito, come descritto nelle note sopra.
Immagina, abbiamo definito i numeri naturali nel calcolo lambda tipicamente dipendente come numeri della Chiesa. Potrebbero essere definiti nel modo seguente: SimpleNat = (R : Set) → R → (R → R) → R zero : SimpleNat zero = λ R z _ → z suc : SimpleNat → SimpleNat …
A partire da Curry-Howard-Lambek, c'è stata una bella trinità di teorie, logiche e categorie di tipi. Sono curioso di sapere quale semantica categorica ottieni quando aggiungi un sottotipo (coercitivo) a una teoria dei tipi - sembra che questo non sia stato esplorato molto, se non del tutto. In generale, l'aggiunta …
Il seguente manoscritto è disponibile pubblicamente? Dana Scott, 1969, Una teoria delle funzioni calcolabili di tipo superiore . Note di seminario inedite, 7 pagine, Università di Oxford. C'è una discussione di questo articolo nella sezione 8.1.2, Tipi come set , in Cardone & Hindley, 2006 History of Lambda-calculus and Combinatory …
Spesso vogliamo definire un oggetto A∈UUN∈UA \in U secondo alcune regole di inferenza. Tali norme denotano una funzione generatrice FFF che, quando è monotona, si ottiene un punto fisso almeno μFμF\mu F . Prendiamo A:=μFUN: =μFA := \mu F di essere la "definizione induttiva" di . Inoltre, la monotonicità di …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.