
In Coq, all logical judgements are typing judgements. Web development, programming languages, Software testing & others Start Your Free Software Development Course Using this, programs, properties and proofs and formalized to a language called Calculus of Inductive Constructions, which is an Alpha – Calculus with a rich type system. Gallina, the specification language represents the programs, properties and proofs for Coq language.Ĭoq language has Curry – Harvard Isomorphism technique. It verifies the programs are correct or not with respect to the specifications. This particular feature is distinct in a way since infinite loops are too common in another programming language (Non Terminating programs).Ĭoq language is designed for developing mathematical proofs and also for writing formal specifications.

Programs written in Gallina have weak normalization property, which is a distinct property that implies programs always terminate.Coq also provides a specification language known as Gallina.Coq programming also offers polymorphic type structures supporting abstraction of code and reuse.It also gives ease of coding and manipulates rich data structures.This Coq language’s common features, being a functional language, include algebraic data types and pattern matching.Coq is dependently typed this type of methodology helps develop the software perfectly while code construction and possible bugs and exceptions are ruled out.Coq is mainly implemented with C, and the core system can be extended with a plug in mechanism.

