{"push_id":1073319988,"size":139,"distinct_size":0,"ref":"refs/heads/trunk","head":"0c45a17071354d18e4c5dbe240236cab2a0c394d","before":"af28c0003b6d18a48c7e4d10871c70ff29123b7d","commits":[{"sha":"9600e9b017ecd0d01f42bff63ae4374b9bee3a34","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"Create branch for disabling and removing cpa.predicate.targetStateSatCheck\n\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20455 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/9600e9b017ecd0d01f42bff63ae4374b9bee3a34"},{"sha":"4a31729288a20b8114e6d4588fc99ed8d8f27e89","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"For BMCAlgorithm, accept if target states are abstraction states.\nThis may soon become the default behavior of the PredicateCPA,\nand while abstractions are not desired for BMC,\nhaving them only for target states is not a problem.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20456 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/4a31729288a20b8114e6d4588fc99ed8d8f27e89"},{"sha":"8dd18da458c5df47fcbec42f28fdcbef3055f07d","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"In PredicatePrecisionAdjustment, always compute an abstraction\nif the state is a target state.\nThis is the first step to removing the targetStateSatCheck\nof the PredicateTransferRelation.\nContrary to the latter, the abstraction computation will honour the\nprecision and only use the SMT solver if the precision says so.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20457 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/8dd18da458c5df47fcbec42f28fdcbef3055f07d"},{"sha":"7de67d033819c34bf0114e90b593ee02392d27e6","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"Let configuration predicateAnalysis-as-bitprecise-cex-check\ndo SAT checks for target states in precision adjustment\ninstead of in transfer relation\nbecause we would like to remove the latter.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20458 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/7de67d033819c34bf0114e90b593ee02392d27e6"},{"sha":"14580d2be166d4ff4bba1601f3b08119b6216c6b","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"Do not crash in cpa.bam.ARGSubtreeRemover if the to-be-removed state\nis the last state of the current path.\nThis will happen if cpa.predicate.targetStateSatCheck is turned off.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20459 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/14580d2be166d4ff4bba1601f3b08119b6216c6b"},{"sha":"487e94322aca24dbaf5b18ca34529e0c6a7c2adc","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"Set default of cpa.predicate.targetStateSatCheck to false\nas a preparation for removing this option altogether.\nThe PredicateCPA now does a SAT check at target states in precision\nadjustment if the precision says so, so there is no need to have the\nexplicit SAT check in the transfer relation as well.\n\nThis is closer to the principle of lazy abstraction and more flexible,\nbecause we now do the SAT checks only if the precision tells us, and not always.\nThe eagerness of having the SAT check always only pays off\nif there are a lot of cases where the last block before the target state\nis contradicting in itself (so we can rule out the target state just by\nlooking at the last block without the need for a refinement).\nHowever, this is expected to be rare.\nFurthermore, if we once find it to be worth the cost in general,\nwe could still simply seed the initial precision appropriately.\nThe increased flexibility of being able to choose when to do such SAT\nchecks is beneficial for example in configurations that combine the\nPredicateCPA with the ValueCPA. There we usually would like to use SAT\nchecks only when the ValueCPA cannot handle a path, but previously we\nhad to do these target state SAT checks always because we could not have\nthem on some paths and not on other paths.\n\nAnother simplification is that now we can control whether SAT checks\nare always done for blocks with the single option\ncpa.predicate.checkBlockFeasibility, previously we had to use\ncpa.predicate.targetStateSatCheck for blocks ending in a target state\nand cpa.predicate.checkBlockFeasibility for all other blocks.\n\nSome configurations and components which relied on the\ntargetStateSatCheck needed to be changed in order to work correctly\nno matter whether the targetStateSatCheck is true or false.\nFor all cases that I know this was done in the previous few commits.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20460 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/487e94322aca24dbaf5b18ca34529e0c6a7c2adc"},{"sha":"25e2abd4235666eed10bbd5f40ae1ca22dec7efb","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"Add statistics about abstractions on target states.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20521 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/25e2abd4235666eed10bbd5f40ae1ca22dec7efb"},{"sha":"f864b0cc87c5f5fc65eaada53587739977963ec1","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"Merge trunk into branch.\n\nThis reverts r20459 (the adjustments to BAM)\nbecause with r20481 there were other changes to the same piece of code in the trunk.\n\nNow BAM is broken again for programs that consist only of a single block,\nbecause while r20481 fixed the same problem as r20459,\nthere is now a new problem that leads to an infinite sequence of refinements\nbecause apparently the new precision for the target state does not get set\nin the reached set correctly.\n\n\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20531 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/f864b0cc87c5f5fc65eaada53587739977963ec1"},{"sha":"eeacd46a035b6fc8606f2efb619d8e6524baa798","author":{"email":"fd754e68a8e713b5ea012d85ae703f854842758b@4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","name":"pwendler"},"message":"Merge trunk into branch.\n\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/branches/predicate-no-targetStateSatCheck@20654 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/eeacd46a035b6fc8606f2efb619d8e6524baa798"},{"sha":"f6730495265071f7a08045e118787a8b01ae7f23","author":{"email":"5f50a84c1fa3bcff146405017f36aec1a10a9e38@stieglmaier.me","name":"Thomas Stieglmaier"},"message":"Performance enhancement for the code which checks for \"dummy loops\" (Error: goto Error).\nIt is not possible to have more than one BlankEdge as successor of a single node. And it is also necessary to have one node with at least two incoming edges of which at least one has to be a BlankEdge. The latter is rather clear, as we only want to remove loops which consisting solely of BlankEdges. The first constraint (only one BlankEdge as successor) comes from the fact that we do only have branching points when there is an AssumeEdge.\n\nThis fixes trac ticket #253.\n\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20677 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/f6730495265071f7a08045e118787a8b01ae7f23"},{"sha":"e36244bf619133165533af5e624fe1748ab643b0","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"Configuration for detecting recursive programs.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20680 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/e36244bf619133165533af5e624fe1748ab643b0"},{"sha":"0f63a2b8af581a48deda14eb970dc663008181b5","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"Updated JavaSMT.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20681 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/0f63a2b8af581a48deda14eb970dc663008181b5"},{"sha":"b468e827bca9778da4fe809557a852ca678ec8f5","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"Formula Slicing: evaluating quantifier elimination based on Z3 tactic QE_light\n\n\nConflicts:\n\tsrc/org/sosy_lab/cpachecker/cpa/predicate/InvariantsManager.java\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20682 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/b468e827bca9778da4fe809557a852ca678ec8f5"},{"sha":"d2af633dcb745573b763be0898d629273a06b93e","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"Formula slicing: small refactoring.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20683 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/d2af633dcb745573b763be0898d629273a06b93e"},{"sha":"5a00a84bbfbd1786694e531e455cbe5a3bebbf89","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"Live variables are sometimes buggy and have nulls\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20684 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/5a00a84bbfbd1786694e531e455cbe5a3bebbf89"},{"sha":"2bcfbdbc3ddda6cf5bfc5b2bd3bae9e9b2fbf577","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"OptimizationProverEnvironmentView: propagate #toString\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20685 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/2bcfbdbc3ddda6cf5bfc5b2bd3bae9e9b2fbf577"},{"sha":"2156647ce9623fcab23ab29f5e1ad68f0917b2c4","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"statistics value renaming\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20686 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/2156647ce9623fcab23ab29f5e1ad68f0917b2c4"},{"sha":"398ce1520aa58653d329b857d7a13f136be2c612","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"RCNF expansion: limit the size of the resulting # of lemmas.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20687 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/398ce1520aa58653d329b857d7a13f136be2c612"},{"sha":"6d0a8fabfb5da2f4eec5d8d1b41acc038fba2974","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"Utility function for \"re-basing\" the starting SSA map.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20688 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/6d0a8fabfb5da2f4eec5d8d1b41acc038fba2974"},{"sha":"a4658824e6601db723ee8533491225f2df273cf6","author":{"email":"fafbb143bc98b3398fb52cc5dc97b0add41e1a09@gmail.com","name":"George Karpenkov"},"message":"Formula slicing: new generation of loop traces\n\nFixes the previous bug.\n\nNew approach: disjunction of all possible transitions in the loop,\nwith SSA indexes re-based.\n\ngit-svn-id: https://svn.sosy-lab.org/software/cpachecker/trunk@20689 4712c6d2-40bb-43ae-aa4b-fec3f1bdfe4c","distinct":false,"url":"https://api.github.com/repos/mutilin/cpachecker/commits/a4658824e6601db723ee8533491225f2df273cf6"}]}