4
ответа

Как доказать (forall x, P x/\Q x)-> (forall x, P x)

Как каждый доказывает (forall x, P x/\Q x)-> (forall x, P x) в Coq? Попытка в течение многих часов и не может выяснить, как сломать антецедент к чему-то, что может переварить Coq. (Я - newb...
вопрос задан: 27 October 2019 20:59
4
ответа

Интерактивная математическая система доказательства

Я ищу инструмент (предпочтенный GUI, но CLI работал бы), который позволяет мне вводить математические выражения и затем выполнять манипуляции ими, но ограничивает меня только математически допустимыми операциями. Кроме того...
вопрос задан: 7 March 2013 17:43
4
ответа

доказательства о регулярных выражениях

Кто-либо знает какие-либо примеры следующего? Разработки доказательства о регулярных выражениях (возможно расширенный с помощью обратных ссылок) в помощниках доказательства (таких как Coq). Программы в зависимо введенном...
вопрос задан: 8 June 2009 13:03
3
ответа

Доказательство f (f bool) = bool

Как может я в coq, доказать, что функция f, который принимает bool true|false и возвращает bool true|false (показанный ниже) при применении дважды к единственному bool true|false будет всегда возвращать то же самое значение...
вопрос задан: 16 September 2012 21:37
2
ответа

Основы coq: функция bin_to_nat

Я прохожу курс «Основы логики» и застрял на последнем упражнении «Основы»: двоичное число записывает преобразователь в его унарное представление: Индуктивный бин: Тип: = | Z | А (...
вопрос задан: 14 February 2019 12:07
2
ответа

Coq терпит неудачу в применении тактики

Я пытаюсь доказать следующую простую теорему о натуральных числах: ((i + j) = (i + k)) - > (j = k) Вот что я имею в Coq: Отмена теоремы: forall (i j k: nat), ((добавьте i j) = (добавьте i k)) ...
вопрос задан: 16 January 2019 10:32
2
ответа

Что означает `true = false` в Coq?

[Я не уверен, что это подходит для переполнения стека, но здесь есть много других вопросов о Coq, так что, возможно, кто-то может помочь.] Я работаю над следующим из http: //www.cis.upenn.edu/~ ...
вопрос задан: 1 November 2011 12:09
2
ответа

Каковы практические ограничения полный язык Тьюринга, такой как Coq?

Поскольку существуют полные языки, отличные от тьюринговых, и, учитывая, что я не изучал Comp Sci в университете, может ли кто-нибудь объяснить что-то, что не может сделать неполный по Тьюрингу язык (такой как Coq)? Или ...
вопрос задан: 16 August 2010 10:57
1
ответ

Гипотеза индукции Coq неверна

Я пытаюсь доказать простую индукцию в двух списках, и по какой-то причине Coq пишет неверную гипотезу индукции. Вот мое доказательство: Лемма eqb_list_true_iff_left_to_right: forall A (eqb: A - > ...
вопрос задан: 27 March 2019 09:49
1
ответ

Расщепление дизъюнкций (\ /) в гипотезе Coq

Я пытаюсь доказать простую лемму в Coq, где гипотеза является дизъюнкцией. Я знаю, как разделять дизъюнкции, когда они появляются в цели, но не могу разделить их, когда они появляются в ...
вопрос задан: 24 March 2019 06:38
1
ответ

Проверьте Coq доказательства на другом языке

Есть ли поддержка для интерпретации и проверки доказательств Coq в другой среде (например, Java, C ++), отличной от Coq? Очевидный подход заключается в создании целого интерпретатора с нуля, скажем, Java, но я ...
вопрос задан: 11 March 2019 13:49
1
ответ

К каким терминам мы можем применить лемму?

Предположим, у нас есть цель a + b + c + d = a + c + b + d, где a, b, c, d: nat и лемма plus_comm от Arith: plus_comm: forall nm: nat, n + m = m + Можно сделать переписать ...
вопрос задан: 3 March 2019 17:08
1
ответ

элементы группы с ограничениями

Я хочу определить минимум и максимум группы, следуя коду, но у него есть проблема. Плз, направь меня. Определение groupmin (sn maxlimit maxsn: nat): nat: = let avg: = div maxlimit maxsn in (sn * ...
вопрос задан: 18 January 2019 20:33
1
ответ

Coq просто подразумевает доказательство

Я пытаюсь доказать следующую тривиальную теорему об отмене натуральных чисел: forall i, j, k в nat. ((i + j) = (i + k)) - > (J = K) Вот что я написал в Coq: Теорема отменить: Forall (я J ...
вопрос задан: 16 January 2019 06:02
1
ответ

Невозможно объединить две одинаковые гипотезы

У меня есть две гипотезы в контексте, но когда я пытаюсь применить одну к другой, я получаю ошибку, которую невозможно объединить. Я должен быть в состоянии объединить их. Две гипотезы следующие: IHl: forallb func l = true -...
вопрос задан: 15 January 2019 21:38
1
ответ

Экзистенциальные цели слишком быстро заполняются

У меня есть класс, содержащий как данные, так и аксиомы. Я хочу создать еще один экземпляр в режиме доказательства на основе (1) существующего экземпляра и (2) другого ввода. Я хочу уничтожить этот второй вход до ...
вопрос задан: 13 July 2018 21:22
1
ответ

Справка с доказательством Coq для SubSequences

У меня есть определенные индуктивные типы: Индуктивный InL (A:Type) (y:A): перечислите-> Опора: = | InHead: forall xs:list A, InL y (подставляет y xs), | InTail: forall (x:A) (xs:list A), InL y xs-> InL y (...
вопрос задан: 10 July 2010 22:46
0
ответов

Использование forall в определении рекурсивной функции

Я пытаюсь использовать функцию для определения рекурсивного определения с помощью меры и получаю сообщение об ошибке: Ошибка: find_call_occs: Prod I ' m размещаю весь исходный код внизу, но моя функция ...
вопрос задан: 6 July 2018 18:09
0
ответов

Ошибка в определении Аккермана в Coq

Я пытаюсь определить функцию Аккермана -Петерса в Coq и получаю сообщение об ошибке, которое не понимаю. Как видите, я упаковываю аргументы Акермана a, b в пару ab; Я...
вопрос задан: 30 June 2017 10:14
0
ответов

Невозможно предоставить длинные (1024+ символа )входные данные для верхнего уровня OCaml и coqtop (и Proof General)

Редактировать 4 :Оказывается, это просто ограничение ввода TTY в целом; в OCaml, Coq или Emacs нет ничего конкретного, что вызывает проблему. Я работаю над программой Coq...
вопрос задан: 23 May 2017 10:29
0
ответов

Сопоставление с шаблоном, не специализирующееся на типах

Я играю в Coq, Мне просто нужна была функция, которая принимает список [1,2,3,2,4] и возвращает что-то вроде Sorted [1,2,3,4] - то есть удаляет плохие части, но ...
вопрос задан: 11 April 2016 03:16
0
ответов

Тактическое абстрагирование над субтермом типа цели

В качестве грубой и неискушенной основы в HoTT можно сделать вывод из индуктивно определенного типа Индуктивные пути {X: Type}: X -> X - > Тип: = | idpath: forall x: X, пути x x. который ...
вопрос задан: 2 June 2015 19:22
0
ответов

Символы Unicode для ключевых слов и операторов в Coq/Proof General в Emacs

Этот вопрос связан с настройкой режима Coq в Proof General в Emacs. Я пытаюсь заставить Emacs автоматически заменять ключевые слова и обозначения в Coq соответствующими глифами Unicode....
вопрос задан: 9 August 2014 02:08
0
ответов

Репликация & # 39; режима Taint & # 39; от & # 39; Укрепить инструмент статической проверки & # 39; в Хаскеле

Я прочитал некоторую документацию по инструменту статической проверки Fortify. Одна из концепций, используемых этим инструментом, называется порчей. Некоторые источники, такие как веб-запросы, предоставляют данные, которые испорчены в одном или ...
вопрос задан: 22 May 2014 13:58
0
ответов

Как делать дела с индуктивным типом в Coq

Я хочу использовать тактику разрушения, чтобы доказать утверждение по случаям. Я прочитал пару примеров в Интернете и запутался. Может кто-нибудь объяснить это лучше? Вот небольшой пример (есть и другие ...
вопрос задан: 20 September 2012 12:32
0
ответов

Что такое конструктор в Coq?

У меня проблемы с пониманием принципов того, что конструктор и как он работает. Например, в Coq нас учили определять натуральные числа следующим образом: Индуктивное nat: Type: = ...
вопрос задан: 16 September 2012 10:29
0
ответов

Разница между Z3 и coq

Мне интересно, может ли кто-нибудь сказать мне разницу между Z3 и coq? Мне кажется, что coq является помощником по доказательству в том смысле, что он требует от пользователя заполнения шагов доказательства, тогда как Z3 не имеет...
вопрос задан: 17 July 2012 22:10
0
ответов

как назвать предположение при запоминании выражения?

Документация для Coq содержит общее указание не полагаться на встроенный механизм именования, а выбирать собственные имена, чтобы изменения в механизме именования не сделали прошлые доказательства недействительными....
вопрос задан: 16 July 2012 12:12
0
ответов

экзистенциальная конкретизация и обобщение в coq

Может ли кто-нибудь дать мне простой пример экзистенциальной конкретизации и экзистенциального обобщения в Coq? Когда я хочу доказать существование x, P, где P — некоторая Prop, использующая x, я часто хочу назвать...
вопрос задан: 21 May 2012 22:46
0
ответов

Не удалось найти экземпляр для переменной

Контекст: я работаю над упражнениями в Software Foundations. Теорема neg_move: forall x y: bool, x = negb y -> negb x = y. Доказательство. Допущенный. Теорема evenb_n__oddb_Sn: forall n: nat, evenb n = ...
вопрос задан: 16 January 2012 01:33