Вопросы по теме 'coq'

Как писать определения без аргументов в Coq?
У меня есть следующий индуктивный тип, определенный в Coq . Inductive natlist : Type := | nil : natlist | cons : nat -> natlist -> natlist. Notation "x :: l" := (cons x l) (at level 60, right associativity). Notation "[ ]" := nil....
525 просмотров
coq
schedule 03.04.2022

Что означает true = false в Coq?
[Я не уверен, что это подходит для переполнения стека, но здесь есть много других вопросов Coq, так что, возможно, кто-то может помочь.] Я работаю над следующим из http://www.cis.upenn.edu/~bcpierce/sf/Basics.html#lab28 (чуть ниже, где вводится...
6649 просмотров
schedule 01.04.2023

Несогласованное поведение Coq относительно неявных параметров определений Let
Я обнаружил какое-то непоследовательное поведение Coq в отношении неявных параметров. Section foo. Let id1 {t : Set} (x : t) := x. Let id2 {t : Set} (x : t) : t. assumption. Qed. Check id2 (1:nat). Check id1 (1:nat). (* Fails with "The...
233 просмотров
coq
schedule 18.11.2022

Не удалось найти экземпляр для переменной
Контекст: я работаю над упражнениями по Software Foundations . Theorem neg_move : forall x y : bool, x = negb y -> negb x = y. Proof. Admitted. Theorem evenb_n__oddb_Sn : forall n : nat, evenb n = negb (evenb (S n)). Proof. intros n....
2616 просмотров
coq
schedule 17.02.2023

Ошибка при определении Аккермана в Coq
Я пытаюсь определить функцию Акерманна-Петерса в Coq и получаю сообщение об ошибке, которого я не понимаю. Как видите, я упаковываю аргументы a, b Аккермана в пару ab ; Я предоставляю упорядочение, определяющее функцию упорядочивания аргументов....
1765 просмотров
schedule 01.04.2022

Доказательство - Coq - Нужна ли индукция?
У меня есть сценарий, в котором я хочу доказать лемму, включающую ряд строковых и списковых переменных. Возможно, для этого нужна «индукция», но может ли кто-нибудь помочь мне в доказательстве приведенной ниже леммы. Если нужен остальной код, я могу...
200 просмотров
schedule 08.10.2022

Используя экзистенциальную теорему в Coq
У меня есть следующая теорема в Coq: Theorem T : exists x:A, P x. Я хочу иметь возможность использовать это значение в последующем доказательстве. I.E. Я хочу сказать что-то вроде: «пусть o представляет такое значение, что P o . Я знаю, что o...
521 просмотров
schedule 10.08.2022

Ошибка типа внутри и снаружи раздела
У меня есть функция " HF " с типом внутри раздела S Open S. HF: forall f : dup_sig Sig, dup_ar f = ASignature.arity (F f) End S. Signature: Type Sig: Signature dp_Sig : Signature dup_sig : Signature -> Signature F : dup_sig Sig ->...
40 просмотров
coq
schedule 16.05.2024

Как объединить два дерева в coq?
Упомянутые здесь деревья обладают тем свойством, что на всех поддеревьях (включая все дерево) содержимое корня имеет наивысший приоритет; но порядок не указан на родственных узлах. Дерево определяется следующим образом: Inductive tree : Set :=...
343 просмотров
coq
schedule 03.09.2022

Добавление гипотез, которых нет в текущих гипотезах
У меня есть доказательство, и в моей гипотезе есть: ... l0 : list (list (ATrs.rule (Sig a)) * boolean * option (list positiveInteger) * option cpf.dpProof) H: forall x : list (ATrs.rule (Sig a)) * bool * option (list...
220 просмотров
coq
schedule 28.06.2023

Рекомендации по эффективному использованию базы данных подсказок Coq
«Вопрос, который вы задаете, кажется субъективным и, скорее всего, будет закрыт». Ну, я это знаю, но все же кажется, что стоит спросить здесь. Мне много раз говорили, что я должен использовать базу данных подсказок и авто, потому что это...
744 просмотров
coq
schedule 17.06.2022

Новый прицел в Coq
Я хотел бы иметь свой собственный объем, чтобы играть с длинными дистрибутивами. Declare Scope my_scope. Delimit Scope my_scope with my. Open Scope my_scope. Definition f (x y a b : nat) : nat := x+y+a+b. Notation "x < y * a = b" := (f x y a...
1593 просмотров
coq
schedule 12.08.2022

Доказательство менее чем
Я пытаюсь доказать некоторые теоремы о less_than в Coq. Я использую это индуктивное определение: Inductive less_than : nat->nat->Prop := | lt1 : forall a, less_than O (S a) | lt2 : forall a b, less_than a b -> less_than a (S b)...
86 просмотров
schedule 17.07.2023

Гипотеза универсальной количественной оценки в Coq
Я хочу изменить гипотезу H из формы ниже mL : Map mR : Map H : forall (k : RecType) (e : String.string), MapsTo k e (filter (is_vis_cookie l) mL) <-> MapsTo k e (filter (is_vis_cookie l) mR)...
197 просмотров
schedule 21.06.2022

Как сделать нотации видимыми вне подписи модуля в Coq?
Я определил сигнатуру модуля в Coq, которая определяет несколько обозначений. Однако, когда я пытаюсь использовать эти обозначения вне подписи, Coq терпит неудачу. Упрощенная версия моего кода приведена ниже. Любая помощь будет оценена по...
340 просмотров
schedule 12.05.2023

Извлечение в файл OCaml с помощью рекурсивного извлечения в Coq
Я хочу извлечь функцию foo из Coq в файл OCaml . Поскольку моя реальная функция должна использовать Recursive Extraction , когда я запускаю программу, она выводит извлеченный код OCaml в cmd . Но хотелось бы вывести в файл, например: foo.ml...
169 просмотров
schedule 22.04.2023

Concoqtion (Coq + MetaOCaml) — почему отказались?
Прежде чем беспокоить людей в списке рассылки OCaml, я подумал, что могу опубликовать свой вопрос здесь. Я только что обнаружил эту красоту (ссылка на сайт Concoqtion). Concoqtion — это расширение MetaOCaml, которое позволяет использовать...
371 просмотров
schedule 18.12.2022

Понимание семантики кода
У меня есть код OCaml, и мне трудно формализовать функцию mi_pol в Coq, потому что я не совсем понимаю, что именно работает в этом коде, например, на aux (vec_add add const (vector ci v)) args ps а также args.(i-1) <- mat_add add...
99 просмотров
schedule 13.08.2023

Как определить мои собственные (рекурсивные) нотации Coq?
Я начал много работать с Ensemble s, потому что они более гибкие. Чтобы помочь мне в этом, я пытаюсь дать несколько удобных обозначений. Например, относительно легко сделать следующее: Notation "a ∈ S" := (@In _ S a) (at level 80). И я...
1202 просмотров
schedule 29.07.2023

Coq: проблемы со списком в индуктивном
Я новичок в Coq, но с некоторыми усилиями мне удалось доказать различные индуктивные леммы. Однако я застреваю на всех упражнениях, в которых используется следующее индуктивное определение: Inductive In (A:Type) (y:A) : list A -> Prop :=...
1260 просмотров
schedule 30.05.2023