Comment by Agnishom Chattopadhyay on How to deduce this equality based on the...
@AndrejBauer I don't think I know how to prove prefer_concat_antirefl seperately either. I think the same issues would show up.
View ArticleComment by Agnishom Chattopadhyay on How to deduce this equality based on the...
This seems to be more involved than I thought it was :(
View ArticleComment by Agnishom Chattopadhyay on Formally verified email or communication?
This is more of a research question, and as such, a QnA website is probably not the best way to discuss them. It may be a better idea to ask on Coq Club or Coq Discourse or Lean Zulip
View ArticleComment by Agnishom Chattopadhyay on Have Hyperdoctrines been formalized?
If someone else, like me, was wondering: ncatlab.org/nlab/show/hyperdoctrine
View ArticleComment by Agnishom Chattopadhyay on Programming challenge site for lean4
Related: proofassistants.stackexchange.com/questions/1553/…
View ArticleComment by Agnishom Chattopadhyay on How to search for an existing theorem in...
Which one of this is the closest to the Search command in Coq?
View ArticleComment by Agnishom Chattopadhyay on Defining a Recursive Function decreasing...
Thanks! It worked. I had to make a couple of changes, but the pattern matches do carry through to the Obligations. gist.github.com/Agnishom/…
View ArticleComment by Agnishom Chattopadhyay on How to handle data from json files in...
Lean has Json parsers in its stdlib? :o
View ArticleComment by Agnishom Chattopadhyay on how to prove 2+2+a=4+a in lean4?
What does norm_num do?
View ArticleComment by Agnishom Chattopadhyay on How to introduce assumption in lean4
You seem to be doing classical reasoning.
View ArticleComment by Agnishom Chattopadhyay on Proof Assistants in OOP languages
I hope you enjoy self-studying HoTT, Logic and Category theory. However, if you just want to learn how to use Proof Assistants, just start with a tutorial for your favourite proof assistant and start...
View ArticleComment by Agnishom Chattopadhyay on For formal proofs of graph structures...
"I haven't gotten to the point where I would even know how to define what a vertex/edge is in Coq." I think you could do this in multiple ways (adjacency matrices, relations, adjacency lists) with...
View ArticleAnswer by Agnishom Chattopadhyay for Proof assistants for beginners - a...
CoqThe easiest proof assistant to start with isThe assistant with the best learning resourcesThe assistant with a great communityThe assistant with the nicest librariesin that order of priority.I vote...
View ArticleAnswer by Agnishom Chattopadhyay for Which programming languages are most...
This is a trick question, since proof assistants are also themselves programming languages.If we had to choose among languages which are not full blown proof assistants, I would choose a pure...
View ArticleWhen to use coinductive types?
One could define streams in the following mannerSection stream. Variable A : Type. CoInductive stream : Type := | Cons : A -> stream -> stream.End stream.But as far as I can tell, such a...
View ArticleProof Assistants with support for creating executable software artifacts
I am looking for proof assistants with which I can write sound proofs about my functions and values, as well as compile actions of type IO () into executable code. In other words, I am looking for a...
View ArticleAnswer by Agnishom Chattopadhyay for What mathematical topics should I learn...
Here are some topics I would recommend learning:Some Functional Programming. I think it is good to learn some functional programming language. Preferably some language which takes immutability...
View ArticleWhat are some good resources for Proof Assistant based exercises/puzzles for...
Proof Assistant based exercises and puzzles make for a good recreational activity, as well as help sharpen skills of users of said systems. There are many such equivalent resources for algorithmic...
View ArticleProof by Exhaustive Computation for small initial segment of natural numbers...
I have two functions f, g : nat -> nat. Let's pretend that f and g are cheap to compute.I would like to prove something likeLemma upto_20 (n : nat): n <= 20 -> f n = g n.For the proof, I could...
View ArticleCoq simpl failing to do beta reduction in this fixpoint expression
I haveFixpoint concat_aux {A : Type} (lang1 lang2 : list A -> nat -> nat -> bool) (w : list A) (start : nat) (delta i : nat) : bool := match lang1 w start i && lang2 w (start + i)...
View Article