This module contains some operations to handle properties in a Curry program.
Author: Michael Hanus
Version: December 2017
| isProperty
                  :: CFuncDecl -> BoolCheck whether a function definition is a property, i.e., if the result type is ProporPropIO. | 
| isPropType
                  :: CTypeExpr -> BoolIs the type expression the type Test.EasyCheck.Prop? | 
| isPropIOType
                  :: CTypeExpr -> BoolIs the type expression the type Test.EasyCheck.PropIO? | 
| isEquivProperty
                  :: CFuncDecl -> Maybe ((String,String),(String,String))Check whether a function definition is an equivalence property, i.e., has the form test = f1 <=> f2. | 
| propModule
                  :: StringName of the Test.Prop module (the clone of the EasyCheck module). | 
| easyCheckModule
                  :: StringName of the EasyCheck module. | 
| easyCheckExecModule
                  :: StringName of the EasyCheckExec module. | 
| 
                       
                      Check whether a function definition is a property,
i.e., if the result type is  | 
| 
                       Is the type expression the type Test.EasyCheck.Prop? | 
| 
                       Is the type expression the type Test.EasyCheck.PropIO? | 
| 
                       
                      Check whether a function definition is an equivalence property, i.e.,
has the form  | 
| 
                       Name of the Test.Prop module (the clone of the EasyCheck module). 
 | 
| 
                       Name of the EasyCheck module. 
 | 
| 
                       Name of the EasyCheckExec module. 
 |