Quale paradigma di dimostrazione del teorema automatizzato è appropriato per la formalizzazione in stile Principia Mathematica?


11

Sono in possesso di un libro che, ispirato al Principia Mathematica (PM) di Russell e al positivismo logico, tenta di formalizzare un dominio specifico determinando gli assiomi e deducendone i teoremi. In breve, tenta di fare per il suo dominio ciò che PM ha tentato di fare per la matematica. Come PM, è stato scritto prima che la dimostrazione automatica del teorema (ATP) fosse possibile.

Sto cercando di rappresentare questi assiomi in un moderno sistema ATP e di dedurre teoremi, inizialmente quelli dedotti dall'autore (a mano). Non ho mai usato un sistema ATP prima e ho dato la pletora di opzioni (HOL, Coq, Isabelle e molte altre), ognuna con i suoi punti di forza, i punti deboli e le applicazioni previste, è difficile decidere quale sia appropriato per il mio specifico scopo.

Il formalismo dell'autore rispecchia da vicino PM. Esistono classi (set?), Classi di classi e così via fino a 6 livelli di gerarchia. C'è un primo ordine, e forse una logica di ordine superiore. Data la connessione con il PM, ho inizialmente studiato Metamath, poiché diversi teoremi del PM sono stati dimostrati in MetaMath da altre persone. Tuttavia, Metamath è ovviamente un verificatore di prove e non un sistema ATP.

Scorrendo le descrizioni di vari sistemi ATP, vedo diverse caratteristiche, come implementazioni della teoria dei tipi della Chiesa, teorie dei tipi costruttivi, teorie del tipo intuizionistiche, teoria degli insiemi tipizzati / non tipizzati, deduzione naturale, tipi di calcoli lambda, polimorfismo, teoria delle funzioni ricorsive e l'esistenza dell'uguaglianza (o meno). In breve, ogni sistema sembra implementare un linguaggio molto diverso e deve essere appropriato per formalizzare cose diverse. Presumo che le librerie esistenti per la formalizzazione della matematica non siano pertinenti al mio scopo.

Qualsiasi consiglio riguardo alle caratteristiche che dovrei cercare nella scelta di un ATP, o qualsiasi altro consiglio che potresti avere dopo aver letto questa domanda, sarebbe molto apprezzato. Per riferimento, ecco una pagina di esempio dal libro. Sfortunatamente, come PM, è nella notazione Peano-Russell.

Pagina dal libro

Il libro -

"Il metodo assiomatico in biologia" (1937), JH Woodger, A. Tarski, WF Floyd

Gli assiomi iniziano con il meroologico. Per esempio,

1.1.2 è la somma di se è contenuta nelle parti di , e se quando è una parte di c'è sempre una appartenente ad α che ha parti in comune con le parti di y :xααxyxzαy

S=Dfx^α^{αPx:.(y):yPx..(z).zα.PyPzΛ}

Ancora una volta, nota che questa è la notazione di Peano-Russell (la notazione di Principia).

Gli assiomi successivi hanno un contenuto biologico, come

7.4.2 Quando i gameti di due membri di una classe mendeliana si uniscono in coppie per formare zigoti, la probabilità che una data coppia si unisca è uguale a quella dell'altra coppia.

Questo, da quanto ho capito, era un postulato della genetica mendeliana.

Ometto la notazione per questo perché è lunga tre righe e si basa su contenuti precedentemente definiti.

Esempio di teorema -

Teorema

Ciò sembra avere un'interpretazione significativa della genetica mendeliana, che, non essendo uno storico della biologia, non capisco. Nel libro, è stato dedotto a mano.

Grazie!


C'è un interesse storico nel seguire esattamente il libro o potresti semplicemente estrarne l'essenza (la configurazione di base e gli assiomi) e formalizzare la teoria in un sistema moderno disponibile?
Andrej Bauer,

@andrej: Sì, il mio obiettivo è estrarre e formalizzare l'essenza in un sistema moderno. Non sarebbe necessario dedurre ogni teorema dedotto a mano nel libro. Piuttosto, sarebbe bello dedurre teoremi non nel libro, dagli assiomi nel libro.
Atriya,

5
In tal caso, dovresti capire il testo e poi farlo in qualunque assistente di prova e / o prover di teorema che si adatti meglio al tuo scopo.
Andrej Bauer,

Risposte:


8

Principia Mathematica fu in gran parte una risposta ai vari paradossi scoperti nella logica matematica all'inizio del XX secolo. Tuttavia, l'opera stessa, che è stata spesso elogiata obliquamente come un "capolavoro illeggibile", è alquanto goffa e sono state costruite basi più moderne. Per descrivere la maggior parte della matematica, hai diverse scelte: la teoria delle categorie è una, la teoria dei tipi è stata popolare in alcuni progetti come un'estensione del calcolo lambda, ma la teoria più capita e fondamentale è probabilmente la teoria degli insiemi.

ZFC ZFCZFC, per un vero sistema di dimostrazione di teoremi, sarebbe bello avere un'assiomatizzazione finita.

NBGNBGZFCNBGZFC. La ragione per cui questa teoria è la più appropriata per il ragionamento automatizzato secondo me è la sua espressività nella logica del primo ordine, che ammette un calcolo di prova efficace, solido e completo, e l'assiomatizzazione finita significa che può essere usata con una risoluzione del primo ordine che ci dà il risultato ordinato: se un'istruzione è decidibile, alla fine verrà trovata una prova.

La logica proposizionale non è abbastanza espressiva e la logica di ordine superiore, sebbene molto più espressiva, non ammette un calcolo di prova efficace, solido e completo. La logica del primo ordine con la teoria degli insiemi ti consente di rappresentare e mappare teorie logiche di ordine superiore, quindi per le basi questo è il punto debole ... tranne per la possibilità di affermazioni indecidibili (grazie a Gödel.) Ed è per questo che teorie del primo ordine con un grado quantificatore sufficiente sono spesso descritti come semi-decidibili.

NBG

Ora gli assistenti di prova moderni sono spesso meno interessati alle basi del paradigma di Principia Mathematia e sono più utili per la dimostrazione di teoremi per il lavoro quotidiano, e quindi hanno un po 'di supporto per frammenti di logica di ordine superiore, risoluzione SAT / SMT, teorie dei tipi e altro approcci più informali e meno fondamentali. Ma se stai provando, fai qualcosa del genere Principia Mathematica, un ideale per teoremi di risoluzione del primo ordine con una teoria del primo ordine finemente assiomatizzabile è l'ideale.

NBG

NBGNBG

Il compito che hai a portata di mano se vuoi tentare di definire la teoria in termini di teoria degli insiemi, è trovare le definizioni dei predicati relazionali separate dalla teoria degli insiemi, che ti permetteranno di creare i predicati in termini di teoria degli insiemi. Ancora una volta, un esempio di ciò è il modo in cui definiamo l'aritmetica di Peano nella teoria degli insiemi, che da sola non ha definizioni di numeri, addizioni, moltiplicazioni o persino uguaglianza. Come esempio di una definizione teorica definita di una relazione come l'uguaglianza, possiamo definirla in termini di appartenenza in quanto tale:

x = y)

Un bel po 'di avvertimento: la curva di apprendimento per questo è davvero molto ripida. Se sei intenzionato a perseguire questo obiettivo, potresti ritrovarti diversi anni prima di cogliere il problema completo, come è stata la mia esperienza. Potresti voler esaminare la teoria da un approccio meno fondamentale prima di assumere l'enorme compito di incorporarla in un linguaggio fondamentale per tutto. Dopo tutto, non devi necessariamente ragionare su innumerevoli insiemi di geni che si mescolano.


1
Mille grazie per questa risposta dettagliata e chiara! Alcune domande: 1. Wikipedia afferma che "Lo schema assiomatico di sostituzione non è necessario per le prove della maggior parte dei teoremi della matematica ordinaria" e che non era uno degli assiomi originali di Z (è stato aggiunto da F). È possibile che i miei teoremi possano essere dimostrabili senza di essa, annullando quindi la necessità di NBG? Ovviamente, suppongo che nessun prover di teorema automatizzato consentirebbe l'uso di {ZFC - schema assiomatico di sostituzione}, se fosse possibile?
Atriya,

2. Dato che la logica del primo ordine + la teoria degli insiemi è la migliore per le basi, presumo che HOL / Isabelle / PVS / etc (tutte di ordine superiore) siano tutte eccessive per il mio scopo? Inoltre, tutto ciò che si basa sulla teoria dei tipi (Coq et al.) Non è appropriato? Di conseguenza, artisti del calibro di Prover9 / Vampire / SNARK sarebbero appropriati? Ho una precedente esperienza con SNARK. Può gestire molte logiche del primo ordine con l'uguaglianza, per risoluzione, ma non sono sicuro di come rappresentare la teoria degli insiemi in essa.
Atriya,

1
I dimostratori di teoremi automatizzati possono usare schemi di assioma, ma rendono difficile l'implementazione. Prover9 non li supporta. HOL, Isabelle, Coq supportano tutti la teoria del primo ordine, per quanto io possa ricordare, e probabilmente stanno perfettamente bene per il tuo progetto. Anche se puoi incorporare altre teorie in NBG, non è assolutamente necessario. Non dobbiamo incorporare l'aritmetica di Peano in NBG per provare cose sui numeri ... ma aiuta a imparare e comprendere la struttura logica.
Dezakin,

In seguito puoi sempre incorporare la tua teoria nella teoria degli insiemi, definendo i predicati della teoria in termini di predicato di appartenenza. Non mi preoccuperei di rendere subito il tuo progetto assolutamente fondamentale. Può essere inserito più tardi.
Dezakin,

Sembra quindi che praticamente qualsiasi prover - anche quelli diversi come Coq, HOL e Prover9 - possano essere usati per il mio progetto. In tali casi, quale sarebbe una strategia di decisione intelligente? Non ho familiarità con tutti tranne SNARK. L '"ideale" è la scoperta di nuovi teoremi nel sistema di assiomi fornito.
Atriya,

8

Diversi punti:

  1. ,

  2. Qualsiasi moderno assistente interattivo per le prove avrà sicuramente l'espressività per formalizzare e dimostrare le tue dichiarazioni, come ha suggerito Andrej. In effetti, dal momento che sembrano esserci alcune affermazioni tra cui l'aritmetica, sarebbe saggio usare un sistema come Isabelle , Coq o HOL che hanno già ampie teorie per trattare le dichiarazioni di aritmetica. La mia enfasi sul moderno non è una coincidenza: grandi progressi nell'usabilità sono stati fatti dai tempi di Automath, e onestamente penso che faresti un disservizio usando tutto ciò che non è stato sviluppato attivamente dagli anni '90 (se potessi addirittura ottenerne uno lavorare!)

  3. LATEX


Grazie! Questo è il tipo di consiglio generale che stavo cercando. Contrassegnare questa risposta come accettata. Probabilmente avrò domande più specifiche / tecniche man mano che avanzi.
Atriya,

La teoria degli insiemi è fatta per la logica del primo ordine. Puoi ridurre tutta la matematica a una teoria del primo ordine con un solo predicato: l'appartenenza. Da lì è possibile costruire definizioni di unione, intersezione, sottoinsieme, sottoinsieme corretto e altre relazioni. Prover9 è del tutto appropriato.
Dezakin,

N

Prover9 usa spesso costruzioni teoriche fisse dei numeri naturali. Controlla i problemi della teoria dei numeri e gli assiomi della teoria dei numeri in TPTP. Definiscono la teoria dei numeri come definizioni sulla teoria degli insiemi. L'euristica richiesta da ATP per i dimostratori di teoremi di risoluzione è proprio quale clausola scegliere per l'elenco utilizzabile quando si cerca la clausola vuota, e la teoria degli insiemi non fa eccezione. Altre teorie sono definite nella teoria degli insiemi dai predicati relazionali.
Dezakin,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.