CoqExtraction/Letouzey/2/2.1
#2.1 The difficulties in the removal of logical parts
A potential danger induced by removal of logical parts is that this removal can modify the evaluation order. Let us take for example a function of type , with and being informative types, and a logical property. Our function thus awaits an informative argument and and a proof that this argument satisfies the pre-condition . If one also has a term of type and a proof of type , one can then form the two well-typed Coq terms and . On the Coq level, these two terms have appreciably different nature. For example, the evaluation of will probably be quickly blocked by the lack of the second argument , whereas is a total application which can normally be reduced towards a value of type (when for example these terms , and are closed).