coq

    2Hitze

    3Antwort

    Diese Frage ist inspiriert von Software Foundations, aber geht es nicht um eine Übung. Das weiß ich bis jetzt. Das Imp-Kapitel ("Einfache Imperative Programme") verwendet funktionale Karten (aus dem K

    2Hitze

    1Antwort

    Sagen wir, ich möchte eine Taktik haben, um mehrere Hypothesen auf einmal zu löschen, etwas zu tun wie clear_multiple H1, H2, H3.. Ich habe versucht zu tun, dass Paare, wie folgt mit: Ltac clear_multi

    3Hitze

    1Antwort

    Ich versuche Gefühl von etwas zu machen, das mich überrascht. Betrachten Sie die folgenden zwei Definitionen. Require Import List. Variable A:Type. Inductive NoDup : list A -> Prop := NoDup_ni

    0Hitze

    1Antwort

    Es ist ein einfaches Konstrukt für bedingte Verzweigungen w/Gleichheit Test in Coq: Check ltac:(tryif unify 1 (S 0) then idtac "success" else idtac "fail"). (*success...*) Gibt es eine ähnliche Art

    0Hitze

    1Antwort

    Ich habe in den letzten Wochen mit dem Coq Proof Assistenten gearbeitet, aber heute bin ich auf etwas Besonderes gestoßen. Ich arbeite mich durch die Übungen des Buches "Typen und Programmiersprachen"

    1Hitze

    2Antwort

    Ich würde gerne ein Prädikat für List Eindeutigkeit und seine Entscheidungsfunktion in Coq definieren. Mein erster Versuch war: Section UNIQUE. Variable A : Type. Variable P : A -> Prop.

    1Hitze

    1Antwort

    Betrachten Sie das folgende Fixpoint: Require Import Coq.Lists.List. Import ListNotations. Inductive my_type: Type:= | Left: my_type | Right: my_type . Fixpoint decrease (which: my_type) (left

    2Hitze

    1Antwort

    Im folgende Beispiel Vereinigung (wenig überraschend) keine kanonische Struktur ableiten: Structure Pn := sr {gs: nat}. Canonical Structure Pn_1: Pn := sr 1. Canonical Structure Pn_2: Pn := sr 2.

    2Hitze

    1Antwort

    Coq 8.7 integriert die beliebte Ssreflect-Bibliothek. Seine Bibliotheken können daher auf folgende Weise eingeführt werden: From Coq Require Import ssreflect ssrfun ssrbool. Allerdings, wenn ich ver

    2Hitze

    1Antwort

    Sagen wir, ich habe folgendes Program Fixpoint: From Coq Require Import List Program. Import ListNotations. Program Fixpoint f l {measure (length l)}: list nat := let f_rec := (f (tl l)) in match