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

Взаиморекурсивная функция и проверка завершения в Coq
ИЗМЕНИТЬ Require Import Bool List ZArith. Variable A: Type. Inductive error := | Todo. Inductive result (A : Type) : Type := Ok : A -> result A | Ko : error -> result A. Variable bool_of_result : result A ->...
966 просмотров
schedule 07.02.2022

Как указать уменьшение размера двух индуктивных типов Coq
Я пытаюсь определить индуктивный тип game для комбинаторных игр. Мне нужен метод сравнения, который показывает, являются ли две игры lessOrEq , greatOrEq , lessOrConf или greatOrConf . Затем я могу проверить, равны ли две игры, если они обе...
1708 просмотров

Не могу определить прекращение
Функция для определения, является ли набор подмножеством другого: Fixpoint subset (s1:bag) (s2:bag) : bool := match s1 with | nil => true | h :: t => match (beq_nat (count h s1) (count h s2)) with | true => subset (remove_all h...
122 просмотров
schedule 12.06.2023

Убедить Идриса в рекурсивной совокупности вызовов
Я написал следующий тип, чтобы закодировать в нем все возможные рациональные числа: data Number : Type where PosN : Nat -> Number Zero : Number NegN : Nat -> Number Ratio : Number -> Number -> Number Обратите...
172 просмотров
schedule 07.11.2022

Определение рекурсивной функции по типу продукта
Я пытаюсь формализовать каждое целое число как класс эквивалентности пар натуральных чисел, где первый компонент - положительная часть, а второй компонент - отрицательная часть. Definition integer : Type := prod nat nat. Я хочу определить...
197 просмотров
schedule 11.07.2023