added support for nonstandard models to Nitpick (based on an idea by Koen Claessen) and did other fixes to Nitpick
3 * Added and implemented "binary_ints" and "bits" options
4 * Added "std" option and implemented support for nonstandard models
5 * Fixed soundness bugs related to "destroy_constrs" optimization and record
10 * Moved into Isabelle/HOL "Main"
11 * Renamed "nitpick_const_def" to "nitpick_def", "nitpick_const_simp" to
12 "nitpick_simp", "nitpick_const_psimp" to "nitpick_psimp", and
13 "nitpick_ind_intro" to "nitpick_intro"
14 * Replaced "special_depth" and "skolemize_depth" options by "specialize"
16 * Renamed "coalesce_type_vars" to "merge_type_vars"
17 * Optimized Kodkod encoding of datatypes whose constructors don't appear in
18 the formula to falsify
19 * Added support for codatatype view of datatypes
20 * Fixed soundness bug in the "uncurry" optimization
21 * Fixed soundness bugs related to sets, sets of sets, (co)inductive
22 predicates, typedefs, "finite", "rel_comp", and negative literals
23 * Fixed monotonicity check
24 * Fixed error when processing definitions
25 * Fixed error in "star_linear_preds" optimization
26 * Fixed error in Kodkod encoding of "The" and "Eps"
27 * Fixed error in display of uncurried constants
28 * Speeded up scope enumeration
30 Version 1.2.2 (16 Oct 2009)
32 * Added and implemented "star_linear_preds" option
33 * Added and implemented "format" option
34 * Added and implemented "coalesce_type_vars" option
35 * Added and implemented "max_genuine" option
36 * Fixed soundness issues related to "set", "distinct", "image", "Sigma",
37 "-1::nat", subset, constructors, sort axioms, and partially applied
39 * Fixed error in "show_consts" for boxed specialized constants
40 * Fixed errors in Kodkod encoding of "The", "Eps", and "ind"
41 * Fixed display of Skolem constants
42 * Fixed error in "check_potential" and "check_genuine"
43 * Added boxing support for higher-order constructor parameters
44 * Changed notation used for coinductive datatypes
45 * Optimized Kodkod encoding of "If", "card", and "setsum"
46 * Improved the monotonicity check
48 Version 1.2.1 (25 Sep 2009)
50 * Added explicit support for coinductive datatypes
51 * Added and implemented "box" option
52 * Added and implemented "fast_descrs" option
53 * Added and implemented "uncurry" option
54 * Renamed and generalized "sync_cards" and "inductive_mood" to "mono" and "wf"
55 * Fixed soundness issue related to nullary constructors
56 * Fixed soundness issue related to higher-order quantifiers
57 * Fixed soundness issue related to the "destroy_constrs" optimization
58 * Fixed soundness issues related to the "special_depth" optimization
59 * Added support for PicoSAT and incorporated it with the Nitpick package
60 * Added automatic detection of installed SAT solvers based on naming
62 * Optimized handling of quantifiers by moving them inward whenever possible
63 * Optimized and improved precision of "wf" and "wfrec"
64 * Improved handling of definitions made in locales
65 * Fixed checked scope count in message shown upon interruption and timeout
66 * Added minimalistic Nitpick-like tool called Minipick
68 Version 1.2.0 (27 Jul 2009)
70 * Optimized Kodkod encoding of datatypes and records
71 * Optimized coinductive definitions
72 * Fixed soundness issues related to pairs of functions
73 * Fixed soundness issue in the peephole optimizer
74 * Improved precision of non-well-founded predicates occurring positively in
75 the formula to falsify
76 * Added and implemented "destroy_constrs" option
77 * Changed semantics of "inductive_mood" option to ensure soundness
78 * Fixed semantics of "lockstep" option (broken in 1.1.1) and renamed it
80 * Improved precision of "trancl" and "rtrancl"
81 * Optimized Kodkod encoding of "tranclp" and "rtranclp"
82 * Made detection of inconsistent scope specifications more robust
83 * Fixed a few Kodkod generation bugs
85 Version 1.1.1 (24 Jun 2009)
87 * Added "show_all" option
88 * Fixed soundness issues related to type classes
89 * Improved precision of some set constructs
90 * Fiddled with the automatic monotonicity check
91 * Fixed performance issues related to scope enumeration
92 * Fixed a few Kodkod generation bugs
94 Version 1.1.0 (16 Jun 2009)
96 * Redesigned handling of datatypes to provide an interface baded on "card" and
97 "max", obsoleting "mult"
98 * Redesigned handling of typedefs, "rat", and "real"
99 * Made "lockstep" option a three-state option and added an automatic
101 * Made "batch_size" a (n + 1)-state option whose default depends on whether
103 * Made "debug" automatically enable "verbose"
104 * Added "destroy_equals" option
105 * Added "no_assms" option
106 * Fixed bug in computation of ground type
107 * Fixed performance issue related to datatype acyclicity constraint generation
108 * Fixed performance issue related to axiom selection
109 * Improved precision of some well-founded inductive predicates
110 * Added more checks to guard against very large cardinalities
111 * Improved hit rate of potential counterexamples
112 * Fixed several soundness issues
113 * Optimized the Kodkod encoding to benefit more from symmetry breaking
114 * Optimized relational composition, cartesian product, and converse
115 * Added support for HaifaSat
117 Version 1.0.3 (17 Mar 2009)
119 * Added "HOL-Nominal-Nitpick" as a target in addition to "HOL-Nitpick"
120 * Added "overlord" option to assist debugging
121 * Increased default value of "special_depth" option
122 * Fixed a bug that effectively disabled the "nitpick_const_def" attribute
123 * Ensured that no scopes are skipped when multithreading is enabled
124 * Fixed soundness issue in handling of "The", "Eps", and partial functions
125 defined using Isabelle's function package
126 * Fixed soundness issue in handling of non-definitional axioms
127 * Fixed soundness issue in handling of "Abs_" and "Rep_" functions for "unit",
128 "nat", "int", and "*"
129 * Fixed a few Kodkod generation bugs
130 * Optimized "div", "mod", and "dvd" on "nat" and "int"
132 Version 1.0.2 (12 Mar 2009)
134 * Added support for non-definitional axioms
135 * Improved Isar integration
136 * Added support for multiplicities of 0
137 * Added "max_threads" option and support for multithreaded Kodkodi
138 * Added "blocking" option to control whether Nitpick should be run
139 synchronously or asynchronously
140 * Merged "auto_timeout" and "wellfounded_timeout" into "tac_timeout"
141 * Added "auto" option to run Nitpick automatically (like Auto Quickcheck)
142 * Introduced "auto_timeout" to specify Auto Nitpick's time limit
143 * Renamed the possible values for the "expect" option
144 * Renamed the "peephole" option to "peephole_optim"
145 * Added negative versions of all Boolean options and made "= true" optional
146 * Altered order of automatic SAT solver selection
148 Version 1.0.1 (6 Mar 2009)
150 * Eliminated the need to import "Nitpick" to use "nitpick"
151 * Added "debug" option
152 * Replaced "specialize_funs" with the more general "special_depth" option
153 * Renamed "watch" option to "eval"
154 * Improved parsing of "card", "mult", and "iter" options
155 * Fixed a soundness bug in the "specialize_funs" optimization
156 * Increased the scope of the "specialize_funs" optimization
157 * Fixed a soundness bug in the treatment of "<" and "<=" on type "int"
158 * Fixed a soundness bug in the "subterm property" optimization for types of
160 * Improved the axiom selection for overloaded constants, which led to an
161 infinite loop for "Nominal.perm"
162 * Added support for multiple instantiations of non-well-founded inductive
163 predicates, which previously raised an exception
164 * Fixed a Kodkod generation bug
165 * Altered order of scope enumeration and automatic SAT solver selection
166 * Optimized "Eps", "nat_case", and "list_case"
167 * Improved output formatting
168 * Added checks to prevent infinite loops in axiom selector and constant
171 Version 1.0.0 (27 Feb 2009)