Skip to main content
Search type Search syntax
Tags [tag]
Exact "words here"
Author user:1234
user:me (yours)
Score score:3 (3+)
score:0 (none)
Answers answers:3 (3+)
answers:0 (none)
isaccepted:yes
hasaccepted:no
inquestion:1234
Views views:250
Code code:"if (foo != bar)"
Sections title:apples
body:"apples oranges"
URL url:"*.example.com"
Saves in:saves
Status closed:yes
duplicate:no
migrated:no
wiki:no
Types is:question
is:answer
Exclude -[tag]
-apples
For more details on advanced search visit our help page
Results tagged with
Search options not deleted user 4533

Coq is a formal proof management system. It is often referred to as a proof assistant.

1 vote
1 answer
60 views

Accessing nested typeclasses elegantly

Now I just wanted to know: is there a way to let Coq infer the HasI automatically so that my first definition (or something similar) will work again? …
1 vote
1 answer
86 views

Prove that a function's result cannot dependent on Prop-valued parameters in Coq

My understanding of universes is very limited, but I believe that, in Coq, you cannot define something in Set whose value depends on something in Prop. …
1 vote
1 answer
61 views

Using if-then-else in Program Definition's obligation

Consider the following program (which is a simpler version of what I'm trying to do): Require Import List Arith. Program Definition test (l: list nat) : nat := if (existsb (fun x => Nat.eqb x 1) l) …
1 vote

Using if-then-else in Program Definition's obligation

I've found that if I want to use if-then-else facts later in a definition, I have to use decidable facts. For example, in this case: Definition has_one (l: list nat) := exists a, In a l /\ a = 1. D …
return true's user avatar
0 votes
1 answer
35 views

Ltac with explicit constructor not working

I'm trying to do very simple reasoning about paths (e.g. in graphs) that are defined like follows: Parameter Edge: nat -> nat -> Prop. Inductive Path: nat -> nat -> Prop := | path_refl: forall v, P …
4 votes
1 answer
193 views

Error `Abstracting over the term leads to a term which is ill-typed` when doing a destruct

I'm trying to make a version of nth that cannot fail because it knows that the index is inbounds. So far, so good: Program Definition nth_safe {A} (l: list A) (n: nat) (IN: (n < length l)%nat) : A := …