úÎ!ÛžÎæ¤      !"#$%&'()*+,-./0123456 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R STUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£Safež¤¥¦§¨©ª«None>?V Igenvalidity-property¬ is idempotent for any type:(idempotentOnArbitrary (id :: Int -> Int)­6, given any input, is idempotent for any type as well:7\int -> idempotentOnArbitrary (const int :: Int -> Int)None>?V#genvalidity-property4The given generator generates only valid data pointsgenvalidity-property6The given generator generates only invalid data pointsNone>?V'genvalidity-propertyu Associative(\star) \quad\equiv\quad \forall a, b, c: (a \star b) \star c = a \star (b \star c) genvalidity-property&associative ((*) :: Int -> Int -> Int)&associative ((+) :: Int -> Int -> Int) genvalidity-property1associativeOnArbitrary ((*) :: Int -> Int -> Int)1associativeOnArbitrary ((+) :: Int -> Int -> Int)  None>?V³ genvalidity-property^ Commutative(\star) \quad\equiv\quad \forall a, b: a \star b = b \star a genvalidity-property/commutative ((+) :: Double -> Double -> Double)/commutative ((*) :: Double -> Double -> Double) genvalidity-property&commutative ((+) :: Int -> Int -> Int)&commutative ((*) :: Int -> Int -> Int) genvalidity-property1commutativeOnArbitrary ((+) :: Int -> Int -> Int)1commutativeOnArbitrary ((*) :: Int -> Int -> Int)  None>?V;G genvalidity-property[ LeftIdentity(\star, \doteq, b) \quad\equiv\quad \forall a: (b \star a) \doteq a genvalidity-property=leftIdentityOnValid (flip ((^) :: Double -> Int -> Double)) 1genvalidity-property0leftIdentity (flip ((^) :: Int -> Int -> Int)) 1genvalidity-property;leftIdentityOnArbitrary (flip ((^) :: Int -> Int -> Int)) 1genvalidity-property\ RightIdentity(\star, \doteq, b) \quad\equiv\quad \forall a: (a \star b) \doteq a genvalidity-property7rightIdentityOnValid ((^) :: Double -> Int -> Double) 1genvalidity-property*rightIdentity ((^) :: Int -> Int -> Int) 1genvalidity-property5rightIdentityOnArbitrary ((^) :: Int -> Int -> Int) 1genvalidity-property} Identity(\star, \doteq, b) \quad\equiv\quad LeftIdentity(\star, \doteq, b) \wedge RightIdentity(\star, \doteq, b) genvalidity-property5identityOnValid ((*) :: Double -> Double -> Double) 15identityOnValid ((+) :: Double -> Double -> Double) 0genvalidity-property%identity ((*) :: Int -> Int -> Int) 1%identity ((+) :: Int -> Int -> Int) 0genvalidity-property0identityOnArbitrary ((*) :: Int -> Int -> Int) 10identityOnArbitrary ((+) :: Int -> Int -> Int) 0genvalidity-propertyA binary operationgenvalidity-property An equalitygenvalidity-propertyA candidate left-identitygenvalidity-property An elementgenvalidity-propertyA binary operationgenvalidity-property An equalitygenvalidity-propertyA candidate left-identitygenvalidity-propertyA binary operationgenvalidity-propertyA candidate left-identitygenvalidity-propertyA binary operationgenvalidity-property An equalitygenvalidity-propertyA candidate right-identitygenvalidity-property An elementgenvalidity-propertyA binary operationgenvalidity-property An equalitygenvalidity-propertyA candidate right-identitygenvalidity-propertyA binary operationgenvalidity-propertyA candidate right-identityNone>?V<  None= !"#$ #$"!None>?VDE%genvalidity-propertydThe function produces valid output when the input is generated as specified by the given generator.&genvalidity-propertyCThe function produces valid output when the input is generated by genValid'genvalidity-propertyCThe function produces valid output when the input is generated by  genUnchecked(genvalidity-propertyCThe function produces valid output when the input is generated by  arbitrary %&'()*+,-./0 %&'()*+,-./0None>?VOï1genvalidity-propertyM Antireflexive(\prec) \quad\equiv\quad \forall a: \neg (a \prec a) 3genvalidity-property8antireflexivityOnValid ((<) :: Double -> Double -> Bool)9antireflexivityOnValid ((/=) :: Double -> Double -> Bool)8antireflexivityOnValid ((>) :: Double -> Double -> Bool)4genvalidity-property+antireflexivity ((<) :: Int -> Int -> Bool),antireflexivity ((/=) :: Int -> Int -> Bool)+antireflexivity ((>) :: Int -> Int -> Bool)5genvalidity-property6antireflexivityOnArbitrary ((<) :: Int -> Int -> Bool)7antireflexivityOnArbitrary ((/=) :: Int -> Int -> Bool)6antireflexivityOnArbitrary ((>) :: Int -> Int -> Bool)1genvalidity-property A relationgenvalidity-property An element1234512345 None>?VjÁ6genvalidity-property Antisymmetric(\prec, \doteq) \quad\equiv\quad \forall a, b: ((a \prec b) \wedge (b \prec a)) \Rightarrow (a \doteq b) 9genvalidity-property5antisymmetryOnValid ((>) :: Double -> Double -> Bool)6antisymmetryOnValid ((>=) :: Double -> Double -> Bool)6antisymmetryOnValid ((<=) :: Double -> Double -> Bool)5antisymmetryOnValid ((<) :: Double -> Double -> Bool)JantisymmetryOnValid (Data.List.isPrefixOf :: [Double] -> [Double] -> Bool)JantisymmetryOnValid (Data.List.isSuffixOf :: [Double] -> [Double] -> Bool)IantisymmetryOnValid (Data.List.isInfixOf :: [Double] -> [Double] -> Bool):genvalidity-property(antisymmetry ((>) :: Int -> Int -> Bool))antisymmetry ((>=) :: Int -> Int -> Bool))antisymmetry ((<=) :: Int -> Int -> Bool)(antisymmetry ((<) :: Int -> Int -> Bool)=antisymmetry (Data.List.isPrefixOf :: [Int] -> [Int] -> Bool)=antisymmetry (Data.List.isSuffixOf :: [Int] -> [Int] -> Bool)<antisymmetry (Data.List.isInfixOf :: [Int] -> [Int] -> Bool)>antisymmetry ((\x y -> even x && odd y) :: Int -> Int -> Bool);genvalidity-property3antisymmetryOnArbitrary ((>) :: Int -> Int -> Bool)4antisymmetryOnArbitrary ((>=) :: Int -> Int -> Bool)4antisymmetryOnArbitrary ((<=) :: Int -> Int -> Bool)3antisymmetryOnArbitrary ((<) :: Int -> Int -> Bool)HantisymmetryOnArbitrary (Data.List.isPrefixOf :: [Int] -> [Int] -> Bool)HantisymmetryOnArbitrary (Data.List.isSuffixOf :: [Int] -> [Int] -> Bool)GantisymmetryOnArbitrary (Data.List.isInfixOf :: [Int] -> [Int] -> Bool)IantisymmetryOnArbitrary ((\x y -> even x && odd y) :: Int -> Int -> Bool)6genvalidity-property A relationgenvalidity-propertyAn equivalence relationgenvalidity-property Two elements6789:;6789:; None>?V><genvalidity-propertyD Reflexive(\prec) \quad\equiv\quad \forall a: (a \prec a) >genvalidity-property5reflexivityOnValid ((<=) :: Double -> Double -> Bool)5reflexivityOnValid ((==) :: Double -> Double -> Bool)5reflexivityOnValid ((>=) :: Double -> Double -> Bool)IreflexivityOnValid (Data.List.isPrefixOf :: [Double] -> [Double] -> Bool)IreflexivityOnValid (Data.List.isSuffixOf :: [Double] -> [Double] -> Bool)HreflexivityOnValid (Data.List.isInfixOf :: [Double] -> [Double] -> Bool)?genvalidity-property(reflexivity ((<=) :: Int -> Int -> Bool)(reflexivity ((==) :: Int -> Int -> Bool)(reflexivity ((>=) :: Int -> Int -> Bool)<reflexivity (Data.List.isPrefixOf :: [Int] -> [Int] -> Bool)<reflexivity (Data.List.isSuffixOf :: [Int] -> [Int] -> Bool);reflexivity (Data.List.isInfixOf :: [Int] -> [Int] -> Bool)@genvalidity-property3reflexivityOnArbitrary ((<=) :: Int -> Int -> Bool)3reflexivityOnArbitrary ((==) :: Int -> Int -> Bool)3reflexivityOnArbitrary ((>=) :: Int -> Int -> Bool)GreflexivityOnArbitrary (Data.List.isPrefixOf :: [Int] -> [Int] -> Bool)GreflexivityOnArbitrary (Data.List.isSuffixOf :: [Int] -> [Int] -> Bool)FreflexivityOnArbitrary (Data.List.isInfixOf :: [Int] -> [Int] -> Bool)<genvalidity-property A relationgenvalidity-property An element<=>?@<=>?@ None>?VˆAgenvalidity-propertyc Symmetric(\prec) \quad\equiv\quad \forall a, b: (a \prec b) \Leftrightarrow (b \prec a) Cgenvalidity-property2symmetryOnValid ((==) :: Double -> Double -> Bool)2symmetryOnValid ((/=) :: Double -> Double -> Bool)Dgenvalidity-property%symmetry ((==) :: Int -> Int -> Bool)%symmetry ((/=) :: Int -> Int -> Bool)Egenvalidity-property0symmetryOnArbitrary ((==) :: Int -> Int -> Bool)0symmetryOnArbitrary ((/=) :: Int -> Int -> Bool)Agenvalidity-property A relationgenvalidity-property Two elementsABCDEABCDE None>?V¢6Fgenvalidity-propertyx Transitive(\prec) \quad\equiv\quad \forall a, b, c: ((a \prec b) \wedge (b \prec c)) \Rightarrow (a \prec c) Hgenvalidity-property5transitivityOnValid ((>) :: Double -> Double -> Bool)6transitivityOnValid ((>=) :: Double -> Double -> Bool)6transitivityOnValid ((==) :: Double -> Double -> Bool)6transitivityOnValid ((<=) :: Double -> Double -> Bool)5transitivityOnValid ((<) :: Double -> Double -> Bool)JtransitivityOnValid (Data.List.isPrefixOf :: [Double] -> [Double] -> Bool)JtransitivityOnValid (Data.List.isSuffixOf :: [Double] -> [Double] -> Bool)ItransitivityOnValid (Data.List.isInfixOf :: [Double] -> [Double] -> Bool)Igenvalidity-property(transitivity ((>) :: Int -> Int -> Bool))transitivity ((>=) :: Int -> Int -> Bool))transitivity ((==) :: Int -> Int -> Bool))transitivity ((<=) :: Int -> Int -> Bool)(transitivity ((<) :: Int -> Int -> Bool)=transitivity (Data.List.isPrefixOf :: [Int] -> [Int] -> Bool)=transitivity (Data.List.isSuffixOf :: [Int] -> [Int] -> Bool)<transitivity (Data.List.isInfixOf :: [Int] -> [Int] -> Bool)Jgenvalidity-property3transitivityOnArbitrary ((>) :: Int -> Int -> Bool)4transitivityOnArbitrary ((>=) :: Int -> Int -> Bool)4transitivityOnArbitrary ((==) :: Int -> Int -> Bool)4transitivityOnArbitrary ((<=) :: Int -> Int -> Bool)3transitivityOnArbitrary ((<) :: Int -> Int -> Bool)HtransitivityOnArbitrary (Data.List.isPrefixOf :: [Int] -> [Int] -> Bool)HtransitivityOnArbitrary (Data.List.isSuffixOf :: [Int] -> [Int] -> Bool)GtransitivityOnArbitrary (Data.List.isInfixOf :: [Int] -> [Int] -> Bool)Fgenvalidity-property A relationgenvalidity-propertyThree elementsFGHIJFGHIJNone>?V¢´123456789:;<=>?@ABCDEFGHIJ<=>?@FGHIJ6789:;12345ABCDE None>?V«eKgenvalidity-property$shrinkPreservesValidOnGenValid (:[])Lgenvalidity-property(shrinkPreservesInvalidOnGenInvalid (:[])Mgenvalidity-property"shrinkValidPreservesValid (pure 5)Ngenvalidity-property8shrinkInvalidPreservesInvalid (pure (1/0) :: Gen Double)Ogenvalidity-propertyAshrinkingStaysValid (pure 5 :: Gen Double) (\d -> [d - 1, d - 2])Qgenvalidity-property6shrinkingStaysInvalid (pure (1/0) :: Gen Double) (:[])Rgenvalidity-property(shrinkingPreserves (pure 5) (:[]) (== 5)KLMNOPQRKLMNOPQRSafe>?V­QSgenvalidity-property?A class of types that are the result of functions that can failSTUSTUNone>?V¯³[genvalidity-property¬e is its own inverse function for every type: prop> inverseFunctionsOnArbitrary id (id :: Int -> Int)XYZ[\]^_`abcdefgXYZ[\]^_`abcdefgNone>?V³kgenvalidity-propertyCequivalentOnArbitrary ((* 2) . (+ 1)) ((+ 2) . (* 2) :: Int -> Int)ogenvalidity-property5equivalentOnArbitrary2 (+) ((+) :: Int -> Int -> Int)$hijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹$hijklmnopqsrtuwvxy{z|}~€‚ƒ„…‡†ˆ‰Š‹None>?VÄþ Œgenvalidity-propertyFThe function succeeds if the input is generated by the given generatorgenvalidity-property3The function succeeds if the input is generated by genValidŽgenvalidity-property3The function succeeds if the input is generated by  genUncheckedgenvalidity-property3The function succeeds if the input is generated by  arbitrarygenvalidity-propertyCThe function fails if the input is generated by the given generator‘genvalidity-property0The function fails if the input is generated by  genInvalid’genvalidity-property,The function produces output that satisfies isValid@ if it is given input that is generated by the given generator.“genvalidity-property,The function produces output that satisfies isValid, if it is given input that is generated by  arbitrary.”genvalidity-property,The function produces output that satisfies isValid, if it is given input that is generated by  arbitrary.•genvalidity-property,The function produces output that satisfies isValid, if it is given input that is generated by  genUnchecked.ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£ŒŽ–—˜™‘š›’“”•œžŸ ¡¢£None>?VÆ\%&'()*+,-./0XYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£\%&'()*+,-./0ŒŽ–—˜™‘š›’“”•œžŸ ¡¢£hijklmnopqsrtuwvxy{z|}~€‚ƒ„…‡†ˆ‰Š‹XYZ[\]^_`abcdefgNone>?VÉJЮ¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæç  %&'()*+,-./0123456789:;<=>?@ABCDEFGHIJSTUXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£– %&'()*+,-./0STUŒŽ–—˜™‘š›’“”•œžŸ ¡¢£hijklmnoˆ‰Š‹pqsrtuwvxy{z|}~€‚ƒ„…‡†XYZ[\]^_`abcdefg<=>?@FGHIJ6789:;12345ABCDE è !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKL M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h ijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÃÄÆÃÄÇÃÄÈÃÄÉÃÄÊÃÄËÃÄÌÍÎÏÍÎÏÍÎÐÍÎÑÍÎÒÍÎÓÍÎÔÍÎÕÍÎÖÍÎ×ÍÎØÍÎÙÍÎÚÍÎÛÍÎÜÍÎÝÍÎÞÍÎßÍÎàÍÎáÍÎâÍÎãÍÎäåæçåæèåæéåæêåæëåæìåæíåæîåæïåæðåæñåæòåæóåæôåæõåæöåæ÷åæøåæùåæúåæûåæüåæýåæþåæÿåæåæåæåæ3genvalidity-property-0.2.1.0-Kf8hIYFoCUk5amjXXMWcnW#Test.Validity.Functions.Idempotence"Test.Validity.GenValidity.Property&Test.Validity.Operations.Associativity&Test.Validity.Operations.Commutativity!Test.Validity.Operations.IdentityTest.Validity.Property.Utils Test.Validity.Functions.Validity'Test.Validity.Relations.Antireflexivity$Test.Validity.Relations.Antisymmetry#Test.Validity.Relations.Reflexivity Test.Validity.Relations.Symmetry$Test.Validity.Relations.Transitivity Test.Validity.Shrinking.PropertyTest.Validity.TypesTest.Validity.Functions.Inverse#Test.Validity.Functions.EquivalenceTest.Validity.Functions.CanFailPaths_genvalidity_propertyTest.Validity.OperationsTest.Validity.RelationsTest.Validity.FunctionsTest.Validity.PropertyidempotentOnGenidempotentOnValid idempotentidempotentOnArbitrarygenGeneratesValidgenGeneratesInvalidassociativeOnGensassociativeOnValids associativeassociativeOnArbitrarycommutativeOnGenscommutativeOnValids commutativecommutativeOnArbitraryleftIdentityOnElemWithEqualityleftIdentityOnGenWithEqualityleftIdentityOnGenleftIdentityOnValid leftIdentityleftIdentityOnArbitraryrightIdentityOnElemWithEqualityrightIdentityOnGenWithEqualityrightIdentityOnGenrightIdentityOnValid rightIdentityrightIdentityOnArbitrary identityOnGenidentityOnValididentityidentityOnArbitraryforAllUnchecked forAllValid forAllInvalid===><==> shouldBeValidshouldBeInvalidproducesValidsOnGenproducesValidsOnValids producesValidproducesValidsOnArbitraryproducesValidsOnGens2producesValidsOnValids2producesValid2producesValidsOnArbitrary2producesValidsOnGens3producesValidsOnValids3producesValid3producesValidsOnArbitrary3antireflexiveOnElemantireflexivityOnGenantireflexivityOnValidantireflexivityantireflexivityOnArbitrary antisymmetricOnElemsWithEqualityantisymmetryOnGensWithEqualityantisymmetryOnGensantisymmetryOnValid antisymmetryantisymmetryOnArbitraryreflexiveOnElemreflexivityOnGenreflexivityOnValid reflexivityreflexivityOnArbitrarysymmetricOnElemssymmetryOnGenssymmetryOnValidsymmetrysymmetryOnArbitrarytransitiveOnElemstransitivityOnGenstransitivityOnValid transitivitytransitivityOnArbitraryshrinkPreservesValidOnGenValid"shrinkPreservesInvalidOnGenInvalidshrinkValidPreservesValidshrinkInvalidPreservesInvalidshrinkingStaysValidshrinkingStaysValidWithLimitshrinkingStaysInvalidshrinkingPreservesCanFail hasFailedresultIfSucceeded$fCanFailEither$fCanFailMaybeinverseFunctionsOnGeninverseFunctionsOnValidinverseFunctionsinverseFunctionsOnArbitrary$inverseFunctionsIfFirstSucceedsOnGen&inverseFunctionsIfFirstSucceedsOnValidinverseFunctionsIfFirstSucceeds*inverseFunctionsIfFirstSucceedsOnArbitrary%inverseFunctionsIfSecondSucceedsOnGen'inverseFunctionsIfSecondSucceedsOnValid inverseFunctionsIfSecondSucceeds+inverseFunctionsIfSecondSucceedsOnArbitraryinverseFunctionsIfSucceedOnGen inverseFunctionsIfSucceedOnValidinverseFunctionsIfSucceed$inverseFunctionsIfSucceedOnArbitraryequivalentOnGenequivalentOnValid equivalentequivalentOnArbitraryequivalentOnGens2equivalentOnValids2 equivalent2equivalentOnArbitrary2 equivalentWhenFirstSucceedsOnGen"equivalentWhenFirstSucceedsOnValid&equivalentWhenFirstSucceedsOnArbitraryequivalentWhenFirstSucceeds"equivalentWhenFirstSucceedsOnGens2$equivalentWhenFirstSucceedsOnValids2'equivalentWhenFirstSucceedsOnArbitrary2equivalentWhenFirstSucceeds2!equivalentWhenSecondSucceedsOnGen#equivalentWhenSecondSucceedsOnValid'equivalentWhenSecondSucceedsOnArbitraryequivalentWhenSecondSucceeds#equivalentWhenSecondSucceedsOnGens2%equivalentWhenSecondSucceedsOnValids2(equivalentWhenSecondSucceedsOnArbitrary2equivalentWhenSecondSucceeds2equivalentWhenSucceedOnGenequivalentWhenSucceedOnValidequivalentWhenSucceed equivalentWhenSucceedOnArbitraryequivalentWhenSucceedOnGens2equivalentWhenSucceedOnValids2!equivalentWhenSucceedOnArbitrary2equivalentWhenSucceed2equivalentOnGens3equivalentOnValids3 equivalent3equivalentOnArbitrary3 succeedsOnGensucceedsOnValidsucceedssucceedsOnArbitrary failsOnGenfailsOnInvalidvalidIfSucceedsOnGenvalidIfSucceedsOnValidvalidIfSucceedsOnArbitraryvalidIfSucceedssucceedsOnGens2succeedsOnValids2 succeeds2succeedsOnArbitrary2 failsOnGens2failsOnInvalid2validIfSucceedsOnGens2validIfSucceedsOnValids2validIfSucceeds2validIfSucceedsOnArbitrary2validIfSucceedsOnGens3validIfSucceedsOnValids3validIfSucceeds3validIfSucceedsOnArbitrary3version getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileNamebaseGHC.Baseidconst Semigroup<>Monoidmemptymappendmconcat'validity-0.7.0.0-IAUu4Us1Nxz9hDCrt8ADs9 Data.Validity Validation unValidationValidationChainLocationViolatedValidityvalidategenericValidatetrivialValidationcheckdeclareannotatedelvedecorateinvalidvalidisValidconstructValidconstructValidUnsafe checkValidityprettyValidation isInvalid)genvalidity-0.5.1.0-BVcIoJX7uWTCvvj6P4TaxData.GenValidityuncheckedSubtermsuncheckedRecursivelyShrinkgShrinkUnchecked genListOf arbPartition genSplit5 genSplit4 genSplit3genSplitupToshrinkT3shrinkT2 GenUnchecked genUncheckedshrinkUncheckedGenValidgenValid shrinkValid GenInvalid genInvalid shrinkInvalid GGenUnchecked gGenUncheckedGUncheckedRecursivelyShrinkgUncheckedRecursivelyShrinkGUncheckedSubtermsgUncheckedSubtermsGUncheckedSubtermsInclgUncheckedSubtermsIncl