Vi beskriver en ram av algebraiska strukturer i bevisassistenten Coq. Vi har utvecklat denna ram som en del av FTA-projektet i Nijmegen, där ett konstruktivt bevis på Algebras grundläggande teorem har formaliserats i Coq. Den algebraiska hierarki som beskrivs här är både abstrakt och strukturerad. Strukturer som grupper och ringar är en del av det på ett abstrakt sätt, vilket definierar t.ex. en ring som en tuple bestående av en grupp, en binär operation och en konstant som tillsammans uppfyller egenskaperna hos en ring. På så sätt ärver en ring automatiskt gruppegenskaperna hos tillsatsens undergrupp. Den algebraiska hierarkin formaliseras i Coq genom att använda en kombination av märkta skivtyper och tvång. I de märkta skivtyperna av Coq kan man använda beroende typer: typen av en etikett kan bero på en annan etikett. Detta gör det möjligt att ge en typ till en beroende-typad tuple som A, f, a, där A är en uppsättning, f en operation på A och en del av A. Tvång är funktioner som används implicit (de härleds av typen kontroll) och tillåter till exempel att använda strukturen A := A, f, en som synonym för bäraren uppsättning A, som ofta görs i matematisk praxis. Förutom arv och återanvändning av egenskaper har den algebraiska hierarkin visat sig vara mycket användbar för återanvändning av notationer.
Den andra är C-CoRN-hierarkin REF, som huvudsakligen ägnas åt en konstruktiv formalisering av reella tal och innehåller ett bevis på algebrans grundläggande teorem.
A Constructive Algebraic Hierarchy in Coq
{'venue': 'J. Symb. Comput.', 'journal': 'J. Symb. Comput.', 'mag_field_of_study': ['Mathematics', 'Computer Science']}