Sat, 08 Apr 2006 22:51:26 +0200 wenzelm abbrevs: support print mode;
Sat, 08 Apr 2006 22:51:25 +0200 wenzelm simplified handling of authentic syntax (cf. early externing in consts.ML);
Sat, 08 Apr 2006 22:51:23 +0200 wenzelm 'abbreviation': optional print mode;
Sat, 08 Apr 2006 22:51:22 +0200 wenzelm tuned;
Sat, 08 Apr 2006 22:51:20 +0200 wenzelm pretty_term': early vs. late externing (support authentic syntax);
Sat, 08 Apr 2006 22:51:19 +0200 wenzelm print_theory: print abbreviations nicely;
Sat, 08 Apr 2006 22:51:17 +0200 wenzelm added intern/extern/extern_early;
Sat, 08 Apr 2006 22:51:06 +0200 wenzelm refined 'abbreviation';
Sat, 08 Apr 2006 22:12:02 +0200 haftmann made symlink relative
Sat, 08 Apr 2006 22:10:58 +0200 haftmann made symlink relative
Sat, 08 Apr 2006 15:24:21 +0200 kleing converted Müller to Mueller to make smlnj 110.58 work
Fri, 07 Apr 2006 17:27:53 +0200 berghofe Fixed bug that caused proof of induction rule to fail
Fri, 07 Apr 2006 12:48:10 +0200 kleing remame ASeries to Arithmetic_Series
Fri, 07 Apr 2006 11:17:44 +0200 berghofe Added alternative version of thms_of_proof that does not recursively
Fri, 07 Apr 2006 05:14:54 +0200 mengj hash table now stores thm and get_clasimp_atp_lemmas returns thm rather than term.
Fri, 07 Apr 2006 05:14:06 +0200 mengj filter now accepts axioms as thm, instead of term.
Fri, 07 Apr 2006 05:12:51 +0200 mengj tptp_write_file accepts axioms as thm.
Fri, 07 Apr 2006 05:12:23 +0200 mengj added another function for CNF.
Fri, 07 Apr 2006 05:12:00 +0200 mengj lemmas returned from ResClasimp.get_clasimp_atp_lemmas are thm rather than term.
Fri, 07 Apr 2006 03:20:34 +0200 kleing renamed ASeries to Arithmetic_Series, removed the ^M
Thu, 06 Apr 2006 17:29:40 +0200 urbanc modified the perm_compose rule such that it
Thu, 06 Apr 2006 16:13:17 +0200 haftmann cleanup in typedef/datatype package
Thu, 06 Apr 2006 16:12:57 +0200 haftmann added explicit serialization for int equality
Thu, 06 Apr 2006 16:11:30 +0200 haftmann adapted for definitional code generation
Thu, 06 Apr 2006 16:10:46 +0200 haftmann cleanup in datatype package
Thu, 06 Apr 2006 16:10:22 +0200 haftmann small type annotation fix
Thu, 06 Apr 2006 16:09:54 +0200 haftmann added hook for codegen_theorems.ML
Thu, 06 Apr 2006 16:09:37 +0200 haftmann adaptions to change in typedef_package.ML
Thu, 06 Apr 2006 16:09:20 +0200 haftmann added functions for definitional code generation
Thu, 06 Apr 2006 16:08:25 +0200 haftmann added definitional code generator module: codegen_theorems.ML
Thu, 06 Apr 2006 16:08:22 +0200 haftmann minor changes
Thu, 06 Apr 2006 16:07:44 +0200 haftmann exported specification names
Wed, 05 Apr 2006 17:38:32 +0200 haftmann minor extensions
Wed, 05 Apr 2006 12:47:38 +0200 paulson pool of constants; definition expansion; current best settings
Fri, 31 Mar 2006 10:53:33 +0200 paulson removed some illegal characters: they were crashing SML/NJ
Fri, 31 Mar 2006 10:52:20 +0200 paulson Removal of unused code
Tue, 28 Mar 2006 16:48:18 +0200 paulson Simplified version of Jia's filter. Now all constants are pooled, rather than
Tue, 28 Mar 2006 12:11:33 +0200 schirmer renamed map_val to map_ran
Tue, 28 Mar 2006 12:05:45 +0200 schirmer added map_val, superseding map_at and substitute
Tue, 28 Mar 2006 10:13:51 +0200 haftmann some internal cleanup
Mon, 27 Mar 2006 18:10:02 +0200 paulson removed illegal character codes
Sun, 26 Mar 2006 03:22:42 +0200 urbanc simplified the proof at_fin_set_supp
Sat, 25 Mar 2006 18:16:07 +0100 nipkow changed abbreviation for "infinite" back to translation because
Fri, 24 Mar 2006 19:30:01 +0100 huffman lazy patterns in lambda abstractions
Fri, 24 Mar 2006 15:59:16 +0100 urbanc changed the it_prm proof to work for recursion
Fri, 24 Mar 2006 15:15:08 +0100 urbanc tuned some proofs
Fri, 24 Mar 2006 11:54:07 +0100 berghofe Removed occurrences of makestring, which does not
Thu, 23 Mar 2006 20:03:53 +0100 nipkow Converted translations to abbbreviations.
Thu, 23 Mar 2006 18:14:06 +0100 berghofe Replaced iteration combinator by recursion combinator.
Thu, 23 Mar 2006 10:05:03 +0100 paulson detection of definitions of relevant constants
Thu, 23 Mar 2006 06:18:38 +0100 mengj Only display atpset theorems if Output.show_debug_msgs is true.
Wed, 22 Mar 2006 18:09:35 +0100 urbanc added the first two simple proofs of the recursion
Wed, 22 Mar 2006 14:06:29 +0100 webertj comment fixed
Wed, 22 Mar 2006 12:33:44 +0100 paulson Introduction of "whitelist": theorems forced past the relevance filter
Wed, 22 Mar 2006 12:32:44 +0100 paulson Slight simplification of proofs
Wed, 22 Mar 2006 12:30:29 +0100 paulson Removal of obsolete strategies. Initial support for locales: Frees and Consts
Wed, 22 Mar 2006 11:54:54 +0100 webertj comment for conjI added
Wed, 22 Mar 2006 11:14:58 +0100 nipkow translations -> abbreviations (a cool feature)
Tue, 21 Mar 2006 15:38:53 +0100 wenzelm fixed example;
Tue, 21 Mar 2006 12:18:22 +0100 wenzelm mark_boundT: produce well-typed term;
Tue, 21 Mar 2006 12:18:21 +0100 wenzelm subtract (op =);
Tue, 21 Mar 2006 12:18:20 +0100 wenzelm avoid polymorphic equality;
Tue, 21 Mar 2006 12:18:19 +0100 wenzelm avoid polymorphic equality;
Tue, 21 Mar 2006 12:18:18 +0100 wenzelm moved gen_eq_set to library.ML;
Tue, 21 Mar 2006 12:18:17 +0100 wenzelm added ~$$ (negative literal);
Tue, 21 Mar 2006 12:18:15 +0100 wenzelm avoid polymorphic equality;
Tue, 21 Mar 2006 12:18:13 +0100 wenzelm remove (op =);
Tue, 21 Mar 2006 12:18:11 +0100 wenzelm gen_eq_set, remove (op =);
Tue, 21 Mar 2006 12:18:10 +0100 wenzelm abbreviation upto, length;
Tue, 21 Mar 2006 12:18:09 +0100 wenzelm added subtract;
Tue, 21 Mar 2006 12:18:07 +0100 wenzelm subtract (op =);
Tue, 21 Mar 2006 12:18:06 +0100 wenzelm remove (op =);
Tue, 21 Mar 2006 12:17:38 +0100 paulson Now SML/NJ-friendly (IntInf)
Tue, 21 Mar 2006 12:16:43 +0100 paulson Removal of unnecessary simprules: simproc cancel_numerals now works without
Mon, 20 Mar 2006 21:29:04 +0100 wenzelm interpret: Proof.assert_forward_or_chain;
Mon, 20 Mar 2006 17:38:22 +0100 paulson subsetI is often necessary
Mon, 20 Mar 2006 17:37:11 +0100 paulson Now the setup for cancel_numerals accepts mixed Sucs/+ where the Sucs no longer
Mon, 20 Mar 2006 17:15:35 +0100 ballarin Tuned signature of Locale.add_locale(_i).
Sat, 18 Mar 2006 20:10:51 +0100 wenzelm simplified mg_domain (use Sign.classes/arities_of);
Sat, 18 Mar 2006 20:10:50 +0100 wenzelm made $$ and "this" monomorphic (string);
Sat, 18 Mar 2006 20:10:49 +0100 wenzelm tuned;
Sat, 18 Mar 2006 20:10:48 +0100 wenzelm export arities_of instead of classes_arities_of;
Sat, 18 Mar 2006 18:33:49 +0100 wenzelm updated;
Sat, 18 Mar 2006 18:33:40 +0100 wenzelm renamed const less to lt;
Sat, 18 Mar 2006 09:58:49 +0100 haftmann renamed constant less in lattice
Fri, 17 Mar 2006 22:33:06 +0100 nipkow fixed problem with proof reconstruction by adding add_Suc to arith-simpset.
Fri, 17 Mar 2006 17:38:38 +0100 schirmer added parser locale_expr_unless
Fri, 17 Mar 2006 16:17:38 +0100 haftmann fixed clsvar bug
Fri, 17 Mar 2006 15:22:40 +0100 ballarin add_locale(_i) returns internal locale name.
Fri, 17 Mar 2006 14:20:24 +0100 haftmann added example for operational classes and code generator
Fri, 17 Mar 2006 14:19:24 +0100 haftmann slight improvement in serializer, stub for code generator theorems added
Fri, 17 Mar 2006 10:04:27 +0100 ballarin Renamed setsum_mult to setsum_right_distrib.
Fri, 17 Mar 2006 09:57:25 +0100 ballarin Internal restructuring: local parameters.
Fri, 17 Mar 2006 09:34:23 +0100 haftmann renamed op < <= to Orderings.less(_eq)
Thu, 16 Mar 2006 20:19:25 +0100 ballarin New interface function parameters_of_expr.
Wed, 15 Mar 2006 17:59:33 +0100 berghofe add_inst_arity_i renamed to prove_arity.
Wed, 15 Mar 2006 16:18:12 +0100 wenzelm rename_frees: treat trivial names;
Tue, 14 Mar 2006 22:07:33 +0100 wenzelm added singleton;
Tue, 14 Mar 2006 22:06:43 +0100 wenzelm updated;
Tue, 14 Mar 2006 22:06:42 +0100 wenzelm turned string_of_mixfix into pretty_mixfix;
Tue, 14 Mar 2006 22:06:40 +0100 wenzelm added monomorphic;
Tue, 14 Mar 2006 22:06:39 +0100 wenzelm added 'print_statement' command;
Tue, 14 Mar 2006 22:06:37 +0100 wenzelm added print_stmts;
Tue, 14 Mar 2006 22:06:36 +0100 wenzelm added pretty_statement;
Tue, 14 Mar 2006 22:06:35 +0100 wenzelm added command, keyword;
Tue, 14 Mar 2006 22:06:33 +0100 wenzelm Output.add_mode: keyword component;
Tue, 14 Mar 2006 22:06:31 +0100 wenzelm string_of_mixfix;
Tue, 14 Mar 2006 22:06:29 +0100 wenzelm print_statement;
Tue, 14 Mar 2006 16:29:39 +0100 wenzelm added remove_trrules(_i);
Tue, 14 Mar 2006 16:29:38 +0100 wenzelm added is_elim (from Provers/classical.ML);
Tue, 14 Mar 2006 16:29:37 +0100 wenzelm added 'no_translations';
Tue, 14 Mar 2006 16:29:36 +0100 wenzelm added pretty_stmt;
Tue, 14 Mar 2006 16:29:35 +0100 wenzelm declared_const: check for type constraint only, i.e. admit abbreviations as well;
Tue, 14 Mar 2006 16:29:34 +0100 wenzelm ObjectLogic.is_elim;
Tue, 14 Mar 2006 16:29:32 +0100 wenzelm tuned constdecl;
Tue, 14 Mar 2006 16:29:31 +0100 wenzelm updated;
Tue, 14 Mar 2006 16:29:29 +0100 wenzelm Pure: no_translations;
Tue, 14 Mar 2006 14:25:09 +0100 haftmann refined representation of instance dictionaries
Mon, 13 Mar 2006 10:41:04 +0100 schirmer entry for Library/AssocList
Mon, 13 Mar 2006 00:09:23 +0100 berghofe First version of function for defining graph of iteration combinator.
Sat, 11 Mar 2006 21:23:10 +0100 wenzelm got rid of type Sign.sg;
Sat, 11 Mar 2006 17:30:35 +0100 wenzelm renamed plus to add;
Sat, 11 Mar 2006 17:24:37 +0100 wenzelm renamed const minus to subtract;
Sat, 11 Mar 2006 16:56:09 +0100 wenzelm simplified AxClass interfaces;
Sat, 11 Mar 2006 16:53:28 +0100 wenzelm added axclass_instance_XXX (from axclass.ML);
Sat, 11 Mar 2006 16:53:27 +0100 wenzelm *** empty log message ***
Sat, 11 Mar 2006 16:53:23 +0100 wenzelm added read_class, read/cert_classrel/arity (from axclass.ML);
Sat, 11 Mar 2006 16:53:20 +0100 wenzelm moved read_class, read/cert_classrel/arity to sign.ML;
Sat, 11 Mar 2006 16:53:14 +0100 wenzelm use axclass.ML earlier (in Isar/ROOT.ML);
Sat, 11 Mar 2006 16:53:10 +0100 wenzelm nbe: no_document;
Fri, 10 Mar 2006 19:49:58 +0100 wenzelm tuned;
Fri, 10 Mar 2006 17:57:09 +0100 paulson exporting reapAll and killChild
Fri, 10 Mar 2006 17:53:53 +0100 webertj text delimiter fixed
Fri, 10 Mar 2006 17:24:16 +0100 webertj comment delimiter fixed
Fri, 10 Mar 2006 16:31:50 +0100 webertj clauses now use (meta-)hyps instead of (meta-)implications; significant speedup
Fri, 10 Mar 2006 16:21:49 +0100 haftmann fix for document preparation
Fri, 10 Mar 2006 16:05:34 +0100 schirmer Added Library/AssocList.thy
Fri, 10 Mar 2006 15:33:48 +0100 haftmann renamed HOL + - * etc. to HOL.plus HOL.minus HOL.times etc.
Fri, 10 Mar 2006 12:28:38 +0100 paulson Changed some warnings to debug messages
Fri, 10 Mar 2006 12:27:36 +0100 paulson Frequency analysis of constants (with types).
Fri, 10 Mar 2006 04:03:48 +0100 mengj Shortened the exception messages from assume.
Fri, 10 Mar 2006 04:02:53 +0100 mengj METAHYPS catches THM assume exception and prints out the terms containing schematic vars.
Fri, 10 Mar 2006 00:53:28 +0100 huffman added many simple lemmas
Thu, 09 Mar 2006 06:05:01 +0100 mengj Added more functions to the signature and tidied up some functions.
Wed, 08 Mar 2006 21:40:46 +0100 wenzelm tuned;
Wed, 08 Mar 2006 18:52:43 +0100 urbanc tuned some proofs
Wed, 08 Mar 2006 18:37:31 +0100 wenzelm select_goals: split original conjunctions;
Wed, 08 Mar 2006 18:37:30 +0100 wenzelm method: goal restriction defaults to [1];
Wed, 08 Mar 2006 18:37:28 +0100 wenzelm infer_derivs: avoid allocating empty MinProof;
Wed, 08 Mar 2006 18:37:27 +0100 wenzelm tuned;
Wed, 08 Mar 2006 18:37:25 +0100 wenzelm Isar/method: goal restriction;
Wed, 08 Mar 2006 18:37:24 +0100 wenzelm constdecl: always allow 'where';
Wed, 08 Mar 2006 18:00:00 +0100 urbanc deleted some proofs "on comment"
Wed, 08 Mar 2006 17:55:51 +0100 urbanc tuned some proofs
Wed, 08 Mar 2006 17:54:55 +0100 urbanc tuned some of the proofs about fresh_fun
Wed, 08 Mar 2006 17:23:46 +0100 haftmann first running version of type classes
Wed, 08 Mar 2006 17:03:19 +0100 haftmann first running version of type classes
Wed, 08 Mar 2006 16:29:07 +0100 haftmann first running version of type classes
Wed, 08 Mar 2006 10:19:57 +0100 paulson Frequency strategy. Revised indentation, etc.
Wed, 08 Mar 2006 10:06:31 +0100 nipkow *** empty log message ***
Tue, 07 Mar 2006 18:02:11 +0100 obua added ROOT.ML
Tue, 07 Mar 2006 16:50:33 +0100 paulson Indentation
Tue, 07 Mar 2006 16:49:48 +0100 paulson Tidying and restructuring.
Tue, 07 Mar 2006 16:49:12 +0100 paulson Tidying and tracing. Handling exn CLAUSE so that errors don't reach top-level.
Tue, 07 Mar 2006 16:47:51 +0100 paulson Tidying. clausify_rules_pairs_abs now returns clauses in the same order as before.
Tue, 07 Mar 2006 16:46:54 +0100 paulson Tidying. New invoke_atp_ml for top-level debugging. Flag to force FOL mode.
Tue, 07 Mar 2006 16:45:04 +0100 paulson Tidying, and getting rid of SELECT_GOAL (as it does something different now)
Tue, 07 Mar 2006 16:03:31 +0100 obua Added HOL-ZF to Isabelle.
Tue, 07 Mar 2006 14:09:48 +0100 haftmann substantial improvement in codegen iml
Tue, 07 Mar 2006 04:06:02 +0100 mengj Function get_clasimp_atp_lemmas gets all lemmas from claset, simpet and atpset.
Tue, 07 Mar 2006 04:04:21 +0100 mengj relevance_filter takes input axioms as Term.term.
Tue, 07 Mar 2006 04:01:25 +0100 mengj Proof reconstruction now only takes names of theorems as input.
Tue, 07 Mar 2006 03:59:48 +0100 mengj Added tptp_write_file to write all necessary ATP input clauses to one file.
Tue, 07 Mar 2006 03:58:50 +0100 mengj tptp_write_file now takes goals and axioms as Term.term and writes them to a file.
Tue, 07 Mar 2006 03:56:59 +0100 mengj Added functions to retrieve local and global atpset rules.
Tue, 07 Mar 2006 03:54:11 +0100 mengj Moved the settings for ATP time limit to res_atp.ML
Tue, 07 Mar 2006 03:51:40 +0100 mengj Merged res_atp_setup.ML into res_atp.ML.
Tue, 07 Mar 2006 03:49:26 +0100 mengj When ATP methods call ATPs, all input clauses from one subgoal are written to one file.
Tue, 07 Mar 2006 03:48:02 +0100 mengj Merged res_atp_setup.ML into res_atp.ML.
Sun, 05 Mar 2006 23:56:57 +0100 wenzelm SELECT_GOAL: fixed trivial case;
Sun, 05 Mar 2006 18:49:13 +0100 webertj fixed a typo in a comment
Sat, 04 Mar 2006 21:39:08 +0100 wenzelm tuned;
Sat, 04 Mar 2006 21:10:12 +0100 wenzelm method: SelectGoals;
Sat, 04 Mar 2006 21:10:11 +0100 wenzelm method: syntax for SelectGoals;
Sat, 04 Mar 2006 21:10:10 +0100 wenzelm text: added SelectGoals;
Sat, 04 Mar 2006 21:10:09 +0100 wenzelm tuned conj_curry;
Sat, 04 Mar 2006 21:10:08 +0100 wenzelm added extract, retrofit;
Sat, 04 Mar 2006 21:10:07 +0100 wenzelm added mk_conjunction;
Sat, 04 Mar 2006 21:10:06 +0100 wenzelm method: restriction to first n sub-goals;
Fri, 03 Mar 2006 19:43:46 +0100 nipkow minor changes
Fri, 03 Mar 2006 19:30:30 +0100 nipkow more examples
Fri, 03 Mar 2006 19:30:20 +0100 nipkow changed and retracted change of location of code lemmas.
Fri, 03 Mar 2006 16:25:30 +0100 nipkow ignore repeated vars on lhs, cleanup
Fri, 03 Mar 2006 08:52:39 +0100 haftmann improvements for nbe
Thu, 02 Mar 2006 18:51:11 +0100 paulson reformatting
Thu, 02 Mar 2006 18:50:43 +0100 paulson subset_refl now included using the atp attribute
Thu, 02 Mar 2006 18:49:13 +0100 paulson moved the "use" directive
Thu, 02 Mar 2006 16:01:06 +0100 urbanc fixed the bugs itroduced by the previous commit
Thu, 02 Mar 2006 15:43:22 +0100 urbanc made some small changes to generate nicer latex-output
Thu, 02 Mar 2006 15:05:09 +0100 urbanc split the files
Thu, 02 Mar 2006 00:57:34 +0100 mengj Added in a signature.
Wed, 01 Mar 2006 18:26:20 +0100 urbanc fixed a problem where a permutation is not analysed
Wed, 01 Mar 2006 18:24:31 +0100 urbanc streamlined the proof
Wed, 01 Mar 2006 13:47:42 +0100 haftmann refined representation of codegen intermediate language
Wed, 01 Mar 2006 10:37:00 +0100 urbanc some small tunings
Wed, 01 Mar 2006 10:28:39 +0100 urbanc added fresh_fun_eqvt theorem to the theorem collection
Wed, 01 Mar 2006 10:27:48 +0100 urbanc added initialisation-code for finite_guess
Wed, 01 Mar 2006 10:27:01 +0100 urbanc made some small tunings in the decision-procedure
Wed, 01 Mar 2006 06:08:12 +0100 mengj Added setup for "atpset" (a rule set for ATPs).
Wed, 01 Mar 2006 06:06:16 +0100 mengj Added file Tools/res_atpset.ML.
Wed, 01 Mar 2006 06:05:25 +0100 mengj Merged HOL and FOL clauses and combined some functions.
Wed, 01 Mar 2006 05:56:53 +0100 mengj A new file that sets up rules set used by ATPs. Rules are added to and removed from the set using "atp" attribute.
Wed, 01 Mar 2006 00:04:52 +0100 urbanc some minor tuning on the proofs
Tue, 28 Feb 2006 12:28:22 +0100 urbanc initial commit (especially 2nd half needs to be cleaned up)
Tue, 28 Feb 2006 11:10:51 +0100 paulson removal of theory blacklist
Tue, 28 Feb 2006 11:09:50 +0100 paulson new order for arity clauses
Tue, 28 Feb 2006 11:09:29 +0100 paulson fixed but in freeze_spec
Tue, 28 Feb 2006 11:07:54 +0100 paulson splitting up METAHYPS into smaller functions
Tue, 28 Feb 2006 11:07:13 +0100 paulson typos
Mon, 27 Feb 2006 17:37:37 +0100 urbanc added a finite_guess tactic, which solves
Mon, 27 Feb 2006 15:51:37 +0100 haftmann class package and codegen refinements
Mon, 27 Feb 2006 15:49:56 +0100 haftmann added nbe
Mon, 27 Feb 2006 14:34:03 +0100 nipkow added temp. nbe test
Mon, 27 Feb 2006 14:03:31 +0100 nipkow added nbe, updated neb_*
Mon, 27 Feb 2006 14:03:15 +0100 nipkow added nbe
Mon, 27 Feb 2006 12:20:21 +0100 ballarin Typo.
Mon, 27 Feb 2006 12:14:36 +0100 urbanc added support for arbitrary atoms in the simproc
Sun, 26 Feb 2006 23:01:50 +0100 wenzelm put_thms: do_index;
Sun, 26 Feb 2006 23:01:48 +0100 wenzelm rewrite_goals_rule_aux: actually use prems if present;
Sun, 26 Feb 2006 23:01:47 +0100 wenzelm add_local: do_index;
Sun, 26 Feb 2006 22:25:17 +0100 urbanc replaced the lemma at_two by at_different;
Sun, 26 Feb 2006 22:24:05 +0100 urbanc improved the decision-procedure for permutations;
Sat, 25 Feb 2006 15:19:47 +0100 haftmann improved codegen bootstrap
Sat, 25 Feb 2006 15:19:19 +0100 haftmann change in codegen syntax
Sat, 25 Feb 2006 15:19:00 +0100 haftmann some refinements
Sat, 25 Feb 2006 15:11:35 +0100 haftmann added more detailed data to consts
Fri, 24 Feb 2006 17:48:17 +0100 berghofe Reverted to old interface of AxClass.add_inst_arity(_i)
Fri, 24 Feb 2006 09:00:21 +0100 berghofe Adapted to Florian's recent changes to the AxClass package.
Thu, 23 Feb 2006 20:56:31 +0100 urbanc added lemmas
Thu, 23 Feb 2006 13:37:46 +0100 wenzelm make SML/NJ happy;
(0) -10000 -3000 -1000 -240 +240 +1000 +3000 +10000 +30000 tip