./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-ext/04_incdec_cas.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 6568ba33 Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReach.xml -i ../../../trunk/examples/svcomp/pthread-ext/04_incdec_cas.i -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer GemCutter --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash a9295efc0d8bacfc5fb202511f0d3721ae5554ffb4def47cf5dbf45088356869 --- Real Ultimate output --- This is Ultimate 0.2.3-?-6568ba3-m [2023-11-23 21:53:37,550 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-11-23 21:53:37,615 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2023-11-23 21:53:37,623 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2023-11-23 21:53:37,624 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2023-11-23 21:53:37,643 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-11-23 21:53:37,644 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-11-23 21:53:37,644 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-11-23 21:53:37,645 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2023-11-23 21:53:37,645 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2023-11-23 21:53:37,646 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-11-23 21:53:37,646 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-11-23 21:53:37,647 INFO L153 SettingsManager]: * Use SBE=true [2023-11-23 21:53:37,647 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-11-23 21:53:37,647 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2023-11-23 21:53:37,648 INFO L153 SettingsManager]: * sizeof long=4 [2023-11-23 21:53:37,648 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2023-11-23 21:53:37,648 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-11-23 21:53:37,649 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-11-23 21:53:37,649 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2023-11-23 21:53:37,650 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2023-11-23 21:53:37,650 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2023-11-23 21:53:37,650 INFO L153 SettingsManager]: * sizeof long double=12 [2023-11-23 21:53:37,651 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-11-23 21:53:37,651 INFO L153 SettingsManager]: * Use constant arrays=true [2023-11-23 21:53:37,652 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-11-23 21:53:37,652 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-11-23 21:53:37,652 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2023-11-23 21:53:37,653 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2023-11-23 21:53:37,653 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2023-11-23 21:53:37,653 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-11-23 21:53:37,654 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2023-11-23 21:53:37,654 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2023-11-23 21:53:37,654 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2023-11-23 21:53:37,654 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2023-11-23 21:53:37,655 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2023-11-23 21:53:37,655 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2023-11-23 21:53:37,655 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2023-11-23 21:53:37,656 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2023-11-23 21:53:37,656 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2023-11-23 21:53:37,656 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2023-11-23 21:53:37,658 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> GemCutter Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> a9295efc0d8bacfc5fb202511f0d3721ae5554ffb4def47cf5dbf45088356869 [2023-11-23 21:53:37,911 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-11-23 21:53:37,942 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-11-23 21:53:37,946 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-11-23 21:53:37,947 INFO L270 PluginConnector]: Initializing CDTParser... [2023-11-23 21:53:37,947 INFO L274 PluginConnector]: CDTParser initialized [2023-11-23 21:53:37,949 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-ext/04_incdec_cas.i [2023-11-23 21:53:39,145 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-11-23 21:53:39,419 INFO L384 CDTParser]: Found 1 translation units. [2023-11-23 21:53:39,420 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i [2023-11-23 21:53:39,457 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/13862149c/a001852e09014185806c0bc449eccb62/FLAG193b4718a [2023-11-23 21:53:39,469 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/13862149c/a001852e09014185806c0bc449eccb62 [2023-11-23 21:53:39,471 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-11-23 21:53:39,473 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2023-11-23 21:53:39,475 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-11-23 21:53:39,475 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-11-23 21:53:39,479 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-11-23 21:53:39,481 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:39,484 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ff2a9fa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39, skipping insertion in model container [2023-11-23 21:53:39,484 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:39,529 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-11-23 21:53:39,867 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30369,30382] [2023-11-23 21:53:39,880 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30869,30882] [2023-11-23 21:53:39,891 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 21:53:39,902 INFO L202 MainTranslator]: Completed pre-run [2023-11-23 21:53:39,943 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30369,30382] [2023-11-23 21:53:39,950 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30869,30882] [2023-11-23 21:53:39,953 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 21:53:39,985 WARN L675 CHandler]: The function __VERIFIER_atomic_begin is called, but not defined or handled by StandardFunctionHandler. [2023-11-23 21:53:39,987 WARN L675 CHandler]: The function __VERIFIER_atomic_end is called, but not defined or handled by StandardFunctionHandler. [2023-11-23 21:53:39,994 INFO L206 MainTranslator]: Completed translation [2023-11-23 21:53:39,995 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39 WrapperNode [2023-11-23 21:53:39,996 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-11-23 21:53:39,997 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-11-23 21:53:39,997 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-11-23 21:53:39,998 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-11-23 21:53:40,005 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,036 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,069 INFO L138 Inliner]: procedures = 174, calls = 47, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 162 [2023-11-23 21:53:40,070 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-11-23 21:53:40,070 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-11-23 21:53:40,071 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-11-23 21:53:40,071 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-11-23 21:53:40,079 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,080 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,092 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,093 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,102 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,112 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,116 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,122 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,125 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-11-23 21:53:40,126 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-11-23 21:53:40,126 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-11-23 21:53:40,126 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-11-23 21:53:40,127 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (1/1) ... [2023-11-23 21:53:40,136 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2023-11-23 21:53:40,149 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:53:40,165 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2023-11-23 21:53:40,192 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2023-11-23 21:53:40,218 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2023-11-23 21:53:40,218 INFO L130 BoogieDeclarations]: Found specification of procedure thr1 [2023-11-23 21:53:40,218 INFO L138 BoogieDeclarations]: Found implementation of procedure thr1 [2023-11-23 21:53:40,218 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2023-11-23 21:53:40,219 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2023-11-23 21:53:40,220 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-11-23 21:53:40,221 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2023-11-23 21:53:40,221 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2023-11-23 21:53:40,221 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2023-11-23 21:53:40,221 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2023-11-23 21:53:40,221 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-11-23 21:53:40,221 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-11-23 21:53:40,223 WARN L213 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2023-11-23 21:53:40,363 INFO L241 CfgBuilder]: Building ICFG [2023-11-23 21:53:40,366 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2023-11-23 21:53:40,630 INFO L282 CfgBuilder]: Performing block encoding [2023-11-23 21:53:40,891 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-11-23 21:53:40,891 INFO L309 CfgBuilder]: Removed 3 assume(true) statements. [2023-11-23 21:53:40,892 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 09:53:40 BoogieIcfgContainer [2023-11-23 21:53:40,893 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-11-23 21:53:40,896 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2023-11-23 21:53:40,896 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2023-11-23 21:53:40,899 INFO L274 PluginConnector]: TraceAbstraction initialized [2023-11-23 21:53:40,899 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 09:53:39" (1/3) ... [2023-11-23 21:53:40,900 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f9b479a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 09:53:40, skipping insertion in model container [2023-11-23 21:53:40,900 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:39" (2/3) ... [2023-11-23 21:53:40,901 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f9b479a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 09:53:40, skipping insertion in model container [2023-11-23 21:53:40,901 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 09:53:40" (3/3) ... [2023-11-23 21:53:40,903 INFO L112 eAbstractionObserver]: Analyzing ICFG 04_incdec_cas.i [2023-11-23 21:53:40,910 WARN L145 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2023-11-23 21:53:40,919 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2023-11-23 21:53:40,919 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2023-11-23 21:53:40,919 INFO L514 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2023-11-23 21:53:40,990 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2023-11-23 21:53:41,027 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:53:41,027 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2023-11-23 21:53:41,027 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:53:41,028 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2023-11-23 21:53:41,029 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2023-11-23 21:53:41,060 INFO L159 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2023-11-23 21:53:41,071 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == thr1Thread1of1ForFork0 ======== [2023-11-23 21:53:41,077 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@3c679d0b, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:53:41,077 INFO L358 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2023-11-23 21:53:41,216 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:41,222 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:41,223 INFO L85 PathProgramCache]: Analyzing trace with hash -1020178203, now seen corresponding path program 1 times [2023-11-23 21:53:41,231 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:53:41,231 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [891521918] [2023-11-23 21:53:41,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:41,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:53:41,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:53:41,442 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:41,443 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:53:41,443 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [891521918] [2023-11-23 21:53:41,443 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [891521918] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:53:41,444 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:53:41,444 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-23 21:53:41,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [755964848] [2023-11-23 21:53:41,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:53:41,448 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2023-11-23 21:53:41,448 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:53:41,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2023-11-23 21:53:41,468 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2023-11-23 21:53:41,469 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:41,470 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:53:41,471 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:53:41,471 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:41,613 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:41,614 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2023-11-23 21:53:41,614 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:41,614 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:41,615 INFO L85 PathProgramCache]: Analyzing trace with hash 960673530, now seen corresponding path program 1 times [2023-11-23 21:53:41,615 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:53:41,615 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [509422598] [2023-11-23 21:53:41,615 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:41,615 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:53:41,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:53:42,025 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:42,027 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:53:42,027 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [509422598] [2023-11-23 21:53:42,028 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [509422598] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:53:42,028 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:53:42,028 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-23 21:53:42,028 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1969959379] [2023-11-23 21:53:42,029 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:53:42,030 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 21:53:42,030 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:53:42,031 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 21:53:42,031 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2023-11-23 21:53:42,031 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:42,032 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:53:42,032 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:53:42,032 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:42,032 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:42,295 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:42,296 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:42,296 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2023-11-23 21:53:42,297 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:42,297 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:42,297 INFO L85 PathProgramCache]: Analyzing trace with hash -1530439684, now seen corresponding path program 1 times [2023-11-23 21:53:42,298 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:53:42,298 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1694992826] [2023-11-23 21:53:42,298 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:42,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:53:42,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:53:42,979 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:42,980 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:53:42,980 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1694992826] [2023-11-23 21:53:42,980 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1694992826] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:53:42,981 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:53:42,981 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2023-11-23 21:53:42,981 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1859751976] [2023-11-23 21:53:42,981 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:53:42,981 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2023-11-23 21:53:42,982 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:53:42,982 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2023-11-23 21:53:42,983 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2023-11-23 21:53:42,983 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:42,983 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:53:42,983 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 1.3333333333333333) internal successors, (12), 9 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:53:42,983 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:42,983 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:42,984 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:43,232 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:43,233 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:43,233 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:53:43,233 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2023-11-23 21:53:43,234 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:43,235 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:43,235 INFO L85 PathProgramCache]: Analyzing trace with hash -198990446, now seen corresponding path program 2 times [2023-11-23 21:53:43,235 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:53:43,236 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1989708680] [2023-11-23 21:53:43,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:43,237 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:53:43,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:53:43,747 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:43,749 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:53:43,752 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1989708680] [2023-11-23 21:53:43,752 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1989708680] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 21:53:43,753 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [113945417] [2023-11-23 21:53:43,753 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 21:53:43,753 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 21:53:43,753 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:53:43,806 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 21:53:43,825 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2023-11-23 21:53:43,906 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 21:53:43,907 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:53:43,909 INFO L262 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 36 conjunts are in the unsatisfiable core [2023-11-23 21:53:43,915 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:53:43,977 INFO L349 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2023-11-23 21:53:43,978 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 21 [2023-11-23 21:53:44,015 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:53:44,089 INFO L349 Elim1Store]: treesize reduction 8, result has 52.9 percent of original size [2023-11-23 21:53:44,090 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 16 treesize of output 18 [2023-11-23 21:53:44,231 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:53:44,337 INFO L349 Elim1Store]: treesize reduction 116, result has 29.7 percent of original size [2023-11-23 21:53:44,338 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 4 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 6 new quantified variables, introduced 4 case distinctions, treesize of input 118 treesize of output 268 [2023-11-23 21:53:44,388 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 15 [2023-11-23 21:53:44,410 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 18 [2023-11-23 21:53:44,568 INFO L173 IndexEqualityManager]: detected equality via solver [2023-11-23 21:53:44,587 INFO L349 Elim1Store]: treesize reduction 25, result has 24.2 percent of original size [2023-11-23 21:53:44,587 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 68 treesize of output 50 [2023-11-23 21:53:44,647 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 16 [2023-11-23 21:53:44,696 INFO L173 IndexEqualityManager]: detected equality via solver [2023-11-23 21:53:44,698 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 16 [2023-11-23 21:53:44,703 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 21:53:44,916 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 2 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 69 [2023-11-23 21:53:44,938 WARN L320 FreeRefinementEngine]: Global settings require throwing the following exception [2023-11-23 21:53:44,959 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2023-11-23 21:53:45,160 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,3 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 21:53:45,161 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: no need to replace index at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.constructReplacementForSelectCase(DerPreprocessor.java:331) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.constructDerEnabler(DerPreprocessor.java:186) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.(DerPreprocessor.java:144) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.ElimStorePlain.applyComplexEliminationRules(ElimStorePlain.java:153) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:190) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne3(DualJunctionSaa.java:172) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne2(DualJunctionSaa.java:151) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne1(DualJunctionSaa.java:140) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne0(DualJunctionSaa.java:122) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne(DualJunctionSaa.java:108) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryExhaustivelyToEliminate(DualJunctionSaa.java:93) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:88) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToEliminateOne(QuantifierPusher.java:543) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyNewEliminationTechniquesExhaustively(QuantifierPusher.java:522) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyDualJunctionEliminationTechniques(QuantifierPusher.java:515) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective(QuantifierPusher.java:326) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:189) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine$ApplicationTermTask.doStep(TermContextTransformationEngine.java:209) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:100) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:84) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:297) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:283) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.PartialQuantifierElimination.eliminate(PartialQuantifierElimination.java:51) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:238) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:420) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:199) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:298) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:184) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:162) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:110) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:101) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getInterpolantComputationStatus(IpTcStrategyModuleBase.java:77) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.tryExecuteInterpolantGenerator(AutomatonFreeRefinementEngine.java:267) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.generateProof(AutomatonFreeRefinementEngine.java:148) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:137) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:85) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:82) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:337) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:431) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:366) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:348) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:415) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:302) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseConcurrentProgram(TraceAbstractionStarter.java:225) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:173) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:154) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:124) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:167) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2023-11-23 21:53:45,165 INFO L158 Benchmark]: Toolchain (without parser) took 5692.51ms. Allocated memory was 151.0MB in the beginning and 220.2MB in the end (delta: 69.2MB). Free memory was 123.4MB in the beginning and 143.7MB in the end (delta: -20.3MB). Peak memory consumption was 115.0MB. Max. memory is 16.1GB. [2023-11-23 21:53:45,166 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 151.0MB. Free memory was 126.6MB in the beginning and 126.6MB in the end (delta: 92.9kB). There was no memory consumed. Max. memory is 16.1GB. [2023-11-23 21:53:45,166 INFO L158 Benchmark]: CACSL2BoogieTranslator took 521.29ms. Allocated memory is still 151.0MB. Free memory was 123.4MB in the beginning and 102.8MB in the end (delta: 20.6MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. [2023-11-23 21:53:45,166 INFO L158 Benchmark]: Boogie Procedure Inliner took 73.00ms. Allocated memory is still 151.0MB. Free memory was 102.8MB in the beginning and 100.4MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2023-11-23 21:53:45,167 INFO L158 Benchmark]: Boogie Preprocessor took 54.44ms. Allocated memory is still 151.0MB. Free memory was 100.4MB in the beginning and 98.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2023-11-23 21:53:45,167 INFO L158 Benchmark]: RCFGBuilder took 767.05ms. Allocated memory is still 151.0MB. Free memory was 98.6MB in the beginning and 104.1MB in the end (delta: -5.5MB). Peak memory consumption was 35.6MB. Max. memory is 16.1GB. [2023-11-23 21:53:45,168 INFO L158 Benchmark]: TraceAbstraction took 4268.95ms. Allocated memory was 151.0MB in the beginning and 220.2MB in the end (delta: 69.2MB). Free memory was 103.5MB in the beginning and 143.7MB in the end (delta: -40.2MB). Peak memory consumption was 94.1MB. Max. memory is 16.1GB. [2023-11-23 21:53:45,170 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.20ms. Allocated memory is still 151.0MB. Free memory was 126.6MB in the beginning and 126.6MB in the end (delta: 92.9kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 521.29ms. Allocated memory is still 151.0MB. Free memory was 123.4MB in the beginning and 102.8MB in the end (delta: 20.6MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 73.00ms. Allocated memory is still 151.0MB. Free memory was 102.8MB in the beginning and 100.4MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 54.44ms. Allocated memory is still 151.0MB. Free memory was 100.4MB in the beginning and 98.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 767.05ms. Allocated memory is still 151.0MB. Free memory was 98.6MB in the beginning and 104.1MB in the end (delta: -5.5MB). Peak memory consumption was 35.6MB. Max. memory is 16.1GB. * TraceAbstraction took 4268.95ms. Allocated memory was 151.0MB in the beginning and 220.2MB in the end (delta: 69.2MB). Free memory was 103.5MB in the beginning and 143.7MB in the end (delta: -40.2MB). Peak memory consumption was 94.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: no need to replace index de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: no need to replace index: de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.constructReplacementForSelectCase(DerPreprocessor.java:331) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2023-11-23 21:53:45,197 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Forceful destruction successful, exit code 0 [2023-11-23 21:53:45,402 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReach.xml -i ../../../trunk/examples/svcomp/pthread-ext/04_incdec_cas.i -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer GemCutter --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash a9295efc0d8bacfc5fb202511f0d3721ae5554ffb4def47cf5dbf45088356869 --- Real Ultimate output --- This is Ultimate 0.2.3-?-6568ba3-m [2023-11-23 21:53:47,649 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-11-23 21:53:47,725 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf [2023-11-23 21:53:47,729 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2023-11-23 21:53:47,729 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2023-11-23 21:53:47,750 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-11-23 21:53:47,751 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-11-23 21:53:47,751 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-11-23 21:53:47,752 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2023-11-23 21:53:47,752 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2023-11-23 21:53:47,753 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-11-23 21:53:47,753 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-11-23 21:53:47,753 INFO L153 SettingsManager]: * Use SBE=true [2023-11-23 21:53:47,754 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-11-23 21:53:47,754 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2023-11-23 21:53:47,754 INFO L153 SettingsManager]: * sizeof long=4 [2023-11-23 21:53:47,755 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-11-23 21:53:47,755 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-11-23 21:53:47,755 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2023-11-23 21:53:47,756 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2023-11-23 21:53:47,756 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2023-11-23 21:53:47,757 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2023-11-23 21:53:47,757 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2023-11-23 21:53:47,757 INFO L153 SettingsManager]: * sizeof long double=12 [2023-11-23 21:53:47,758 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-11-23 21:53:47,758 INFO L153 SettingsManager]: * Use constant arrays=true [2023-11-23 21:53:47,758 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-11-23 21:53:47,759 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-11-23 21:53:47,759 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2023-11-23 21:53:47,760 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2023-11-23 21:53:47,760 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2023-11-23 21:53:47,760 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-11-23 21:53:47,761 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2023-11-23 21:53:47,761 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2023-11-23 21:53:47,761 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2023-11-23 21:53:47,762 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2023-11-23 21:53:47,762 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2023-11-23 21:53:47,762 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2023-11-23 21:53:47,763 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2023-11-23 21:53:47,763 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2023-11-23 21:53:47,763 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2023-11-23 21:53:47,764 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2023-11-23 21:53:47,764 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2023-11-23 21:53:47,764 INFO L153 SettingsManager]: * Logic for external solver=AUFBV WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> GemCutter Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> a9295efc0d8bacfc5fb202511f0d3721ae5554ffb4def47cf5dbf45088356869 [2023-11-23 21:53:48,073 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-11-23 21:53:48,088 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-11-23 21:53:48,092 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-11-23 21:53:48,093 INFO L270 PluginConnector]: Initializing CDTParser... [2023-11-23 21:53:48,094 INFO L274 PluginConnector]: CDTParser initialized [2023-11-23 21:53:48,095 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-ext/04_incdec_cas.i [2023-11-23 21:53:49,309 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-11-23 21:53:49,580 INFO L384 CDTParser]: Found 1 translation units. [2023-11-23 21:53:49,583 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i [2023-11-23 21:53:49,606 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/75a5eb1f3/934e9375e5f64193acf988f6f08aa1c5/FLAG9495afb7b [2023-11-23 21:53:49,623 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/75a5eb1f3/934e9375e5f64193acf988f6f08aa1c5 [2023-11-23 21:53:49,625 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-11-23 21:53:49,627 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2023-11-23 21:53:49,631 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-11-23 21:53:49,631 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-11-23 21:53:49,636 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-11-23 21:53:49,637 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 09:53:49" (1/1) ... [2023-11-23 21:53:49,639 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2581435f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:49, skipping insertion in model container [2023-11-23 21:53:49,639 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 09:53:49" (1/1) ... [2023-11-23 21:53:49,688 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-11-23 21:53:49,990 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30369,30382] [2023-11-23 21:53:50,005 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30869,30882] [2023-11-23 21:53:50,022 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 21:53:50,039 INFO L202 MainTranslator]: Completed pre-run [2023-11-23 21:53:50,074 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30369,30382] [2023-11-23 21:53:50,077 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/04_incdec_cas.i[30869,30882] [2023-11-23 21:53:50,080 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 21:53:50,123 WARN L675 CHandler]: The function __VERIFIER_atomic_begin is called, but not defined or handled by StandardFunctionHandler. [2023-11-23 21:53:50,123 WARN L675 CHandler]: The function __VERIFIER_atomic_end is called, but not defined or handled by StandardFunctionHandler. [2023-11-23 21:53:50,130 INFO L206 MainTranslator]: Completed translation [2023-11-23 21:53:50,131 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50 WrapperNode [2023-11-23 21:53:50,131 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-11-23 21:53:50,132 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-11-23 21:53:50,132 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-11-23 21:53:50,132 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-11-23 21:53:50,138 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,160 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,181 INFO L138 Inliner]: procedures = 178, calls = 47, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 162 [2023-11-23 21:53:50,182 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-11-23 21:53:50,182 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-11-23 21:53:50,183 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-11-23 21:53:50,183 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-11-23 21:53:50,190 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,191 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,194 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,198 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,206 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,219 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,224 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,239 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,242 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-11-23 21:53:50,243 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-11-23 21:53:50,243 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-11-23 21:53:50,244 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-11-23 21:53:50,244 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (1/1) ... [2023-11-23 21:53:50,259 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2023-11-23 21:53:50,273 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:53:50,284 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2023-11-23 21:53:50,288 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2023-11-23 21:53:50,334 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2023-11-23 21:53:50,334 INFO L130 BoogieDeclarations]: Found specification of procedure thr1 [2023-11-23 21:53:50,334 INFO L138 BoogieDeclarations]: Found implementation of procedure thr1 [2023-11-23 21:53:50,335 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2023-11-23 21:53:50,335 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-11-23 21:53:50,335 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2023-11-23 21:53:50,335 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2023-11-23 21:53:50,335 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2023-11-23 21:53:50,335 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2023-11-23 21:53:50,336 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2023-11-23 21:53:50,336 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2023-11-23 21:53:50,336 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-11-23 21:53:50,336 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-11-23 21:53:50,337 WARN L213 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2023-11-23 21:53:50,465 INFO L241 CfgBuilder]: Building ICFG [2023-11-23 21:53:50,468 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2023-11-23 21:53:50,793 INFO L282 CfgBuilder]: Performing block encoding [2023-11-23 21:53:51,040 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-11-23 21:53:51,041 INFO L309 CfgBuilder]: Removed 3 assume(true) statements. [2023-11-23 21:53:51,041 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 09:53:51 BoogieIcfgContainer [2023-11-23 21:53:51,041 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-11-23 21:53:51,043 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2023-11-23 21:53:51,044 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2023-11-23 21:53:51,047 INFO L274 PluginConnector]: TraceAbstraction initialized [2023-11-23 21:53:51,047 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 09:53:49" (1/3) ... [2023-11-23 21:53:51,047 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5b3d1d01 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 09:53:51, skipping insertion in model container [2023-11-23 21:53:51,049 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:53:50" (2/3) ... [2023-11-23 21:53:51,049 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5b3d1d01 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 09:53:51, skipping insertion in model container [2023-11-23 21:53:51,050 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 09:53:51" (3/3) ... [2023-11-23 21:53:51,051 INFO L112 eAbstractionObserver]: Analyzing ICFG 04_incdec_cas.i [2023-11-23 21:53:51,058 WARN L145 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2023-11-23 21:53:51,066 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2023-11-23 21:53:51,066 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2023-11-23 21:53:51,066 INFO L514 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2023-11-23 21:53:51,152 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2023-11-23 21:53:51,196 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:53:51,196 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2023-11-23 21:53:51,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:53:51,198 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2023-11-23 21:53:51,212 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2023-11-23 21:53:51,236 INFO L159 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2023-11-23 21:53:51,249 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == thr1Thread1of1ForFork0 ======== [2023-11-23 21:53:51,255 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@253c02d4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:53:51,255 INFO L358 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2023-11-23 21:53:51,422 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:51,426 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:51,426 INFO L85 PathProgramCache]: Analyzing trace with hash -1020178203, now seen corresponding path program 1 times [2023-11-23 21:53:51,441 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:53:51,442 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1286727186] [2023-11-23 21:53:51,442 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:51,442 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:51,442 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:53:51,510 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:53:51,512 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2023-11-23 21:53:51,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:53:51,642 INFO L262 TraceCheckSpWp]: Trace formula consists of 61 conjuncts, 1 conjunts are in the unsatisfiable core [2023-11-23 21:53:51,646 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:53:51,662 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:51,662 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:53:51,663 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:53:51,664 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1286727186] [2023-11-23 21:53:51,664 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1286727186] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:53:51,664 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:53:51,665 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-23 21:53:51,666 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1470911153] [2023-11-23 21:53:51,666 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:53:51,670 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2023-11-23 21:53:51,670 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:53:51,692 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2023-11-23 21:53:51,693 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2023-11-23 21:53:51,694 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:51,695 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:53:51,696 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:53:51,696 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:51,924 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:51,933 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2023-11-23 21:53:52,125 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:52,125 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:52,126 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:52,126 INFO L85 PathProgramCache]: Analyzing trace with hash 960673530, now seen corresponding path program 1 times [2023-11-23 21:53:52,127 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:53:52,127 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [432291592] [2023-11-23 21:53:52,127 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:52,127 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:52,128 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:53:52,129 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:53:52,132 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2023-11-23 21:53:52,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:53:52,242 INFO L262 TraceCheckSpWp]: Trace formula consists of 74 conjuncts, 7 conjunts are in the unsatisfiable core [2023-11-23 21:53:52,244 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:53:52,306 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:53:52,306 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:53:52,365 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:53:52,406 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:52,407 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:53:52,408 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:53:52,408 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [432291592] [2023-11-23 21:53:52,408 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [432291592] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:53:52,408 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:53:52,409 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-23 21:53:52,409 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [438109779] [2023-11-23 21:53:52,409 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:53:52,410 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 21:53:52,410 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:53:52,411 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 21:53:52,411 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2023-11-23 21:53:52,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:52,412 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:53:52,412 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:53:52,412 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:52,412 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:53,846 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:53,848 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:53,855 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Ended with exit code 0 [2023-11-23 21:53:54,052 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:54,052 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:54,053 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:54,053 INFO L85 PathProgramCache]: Analyzing trace with hash -1530439684, now seen corresponding path program 1 times [2023-11-23 21:53:54,053 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:53:54,054 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1100738143] [2023-11-23 21:53:54,054 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:54,054 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:54,054 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:53:54,056 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:53:54,087 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (5)] Waiting until timeout for monitored process [2023-11-23 21:53:54,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:53:54,161 INFO L262 TraceCheckSpWp]: Trace formula consists of 74 conjuncts, 15 conjunts are in the unsatisfiable core [2023-11-23 21:53:54,163 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:53:54,195 INFO L349 Elim1Store]: treesize reduction 24, result has 33.3 percent of original size [2023-11-23 21:53:54,195 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 20 [2023-11-23 21:53:54,244 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:53:54,292 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:53:54,293 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:53:54,399 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 42 [2023-11-23 21:53:54,412 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:53:54,434 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 47 [2023-11-23 21:53:54,444 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 48 treesize of output 22 [2023-11-23 21:53:54,457 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2023-11-23 21:53:54,472 INFO L349 Elim1Store]: treesize reduction 23, result has 4.2 percent of original size [2023-11-23 21:53:54,473 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 27 treesize of output 19 [2023-11-23 21:53:54,486 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:53:54,535 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:54,535 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:53:54,536 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:53:54,536 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1100738143] [2023-11-23 21:53:54,536 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1100738143] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:53:54,536 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:53:54,536 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-11-23 21:53:54,537 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [102662313] [2023-11-23 21:53:54,537 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:53:54,537 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2023-11-23 21:53:54,537 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:53:54,538 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2023-11-23 21:53:54,538 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2023-11-23 21:53:54,539 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:54,539 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:53:54,539 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 7 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:53:54,539 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:54,539 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:54,539 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:54,980 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:54,980 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:54,981 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:53:54,987 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2023-11-23 21:53:55,184 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:55,184 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:55,185 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:55,185 INFO L85 PathProgramCache]: Analyzing trace with hash -198990446, now seen corresponding path program 2 times [2023-11-23 21:53:55,185 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:53:55,186 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1652355984] [2023-11-23 21:53:55,186 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 21:53:55,186 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:55,186 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:53:55,187 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:53:55,188 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (6)] Waiting until timeout for monitored process [2023-11-23 21:53:55,289 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 21:53:55,289 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:53:55,291 INFO L262 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 18 conjunts are in the unsatisfiable core [2023-11-23 21:53:55,295 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:53:55,318 INFO L349 Elim1Store]: treesize reduction 24, result has 33.3 percent of original size [2023-11-23 21:53:55,318 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 20 [2023-11-23 21:53:55,347 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:53:55,406 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:53:55,407 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:53:55,527 INFO L349 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2023-11-23 21:53:55,527 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 26 [2023-11-23 21:53:55,550 INFO L349 Elim1Store]: treesize reduction 21, result has 30.0 percent of original size [2023-11-23 21:53:55,550 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 23 treesize of output 25 [2023-11-23 21:53:55,628 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:53:55,647 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:53:55,647 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:53:55,679 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|)) is different from false [2023-11-23 21:53:55,752 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse0 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))) (and (or (not .cse0) (forall ((v_DerPreprocessor_4 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (store (let ((.cse1 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (store .cse1 |c_~#value~0.base| (store (select .cse1 |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread1of1ForFork0_inc_~inc__vn~0#1|))) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_4) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))) (or .cse0 (forall ((v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store (store |c_#memory_int| |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_3) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))))) is different from false [2023-11-23 21:53:57,051 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_DerPreprocessor_4 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|v_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base_15| (_ BitVec 32)) (v_ArrVal_60 (Array (_ BitVec 32) (_ BitVec 32)))) (or (let ((.cse1 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_60))) (let ((.cse2 (select (select .cse1 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (let ((.cse0 (store (select .cse1 |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32)))) (store (store |c_#memory_int| |~#inc_flag~0.base| .cse0) |c_~#value~0.base| (store (select (store .cse1 |~#inc_flag~0.base| .cse0) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse2)))) |v_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base_15| v_DerPreprocessor_4) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2))) (not (= (_ bv0 1) (select |c_#valid| |v_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base_15|))))) is different from false [2023-11-23 21:53:57,053 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 1 not checked. [2023-11-23 21:53:57,054 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:53:57,054 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1652355984] [2023-11-23 21:53:57,054 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1652355984] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:53:57,054 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:53:57,054 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 7] total 13 [2023-11-23 21:53:57,054 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [302275050] [2023-11-23 21:53:57,054 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:53:57,055 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2023-11-23 21:53:57,055 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:53:57,055 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2023-11-23 21:53:57,056 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=101, Unknown=4, NotChecked=66, Total=210 [2023-11-23 21:53:57,056 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:57,056 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:53:57,056 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 14 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:53:57,056 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:57,056 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:57,056 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:53:57,056 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:59,499 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse2 (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|))) (let ((.cse1 (bvadd .cse2 (_ bv1 32))) (.cse4 (= .cse2 |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))) (and (forall ((v_DerPreprocessor_4 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (store (let ((.cse0 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (store .cse0 |c_~#value~0.base| (store (select .cse0 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_4) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (= (select (select |c_#memory_int| (_ bv3 32)) |c_~#value~0.offset|) (_ bv1 32)) (= |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1| (_ bv0 32)) (not (= (_ bv3 32) |c_ULTIMATE.start_main_~#t~0#1.base|)) (forall ((|v_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base_15| (_ BitVec 32))) (or (forall ((v_DerPreprocessor_4 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (store (let ((.cse3 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (store .cse3 |c_~#value~0.base| (store (select .cse3 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) |v_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base_15| v_DerPreprocessor_4) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (not (= (_ bv0 1) (select |c_#valid| |v_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base_15|))))) (or (not .cse4) (forall ((v_DerPreprocessor_4 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (store (let ((.cse5 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (store .cse5 |c_~#value~0.base| (store (select .cse5 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1| (_ bv1 32))))) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_4) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))) (forall ((v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|)) (= (_ bv3 32) |c_~#value~0.base|) (or .cse4 (forall ((v_ArrVal_66 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store (store |c_#memory_int| |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_3) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_66) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|)))))) is different from false [2023-11-23 21:53:59,747 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:53:59,747 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:53:59,747 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:53:59,748 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2023-11-23 21:53:59,752 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (6)] Forceful destruction successful, exit code 0 [2023-11-23 21:53:59,948 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:59,948 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:53:59,949 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:53:59,949 INFO L85 PathProgramCache]: Analyzing trace with hash -1505233376, now seen corresponding path program 1 times [2023-11-23 21:53:59,949 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:53:59,949 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [474773933] [2023-11-23 21:53:59,950 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:53:59,950 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:53:59,950 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:53:59,951 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:53:59,954 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (7)] Waiting until timeout for monitored process [2023-11-23 21:54:00,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:00,042 INFO L262 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 5 conjunts are in the unsatisfiable core [2023-11-23 21:54:00,044 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:00,065 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 35 [2023-11-23 21:54:00,075 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 40 [2023-11-23 21:54:00,112 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 33 [2023-11-23 21:54:00,136 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 45 [2023-11-23 21:54:00,155 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 74 treesize of output 67 [2023-11-23 21:54:00,222 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 40 [2023-11-23 21:54:00,235 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 48 treesize of output 44 [2023-11-23 21:54:00,285 INFO L349 Elim1Store]: treesize reduction 35, result has 23.9 percent of original size [2023-11-23 21:54:00,286 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 21 treesize of output 19 [2023-11-23 21:54:00,297 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:54:00,300 INFO L349 Elim1Store]: treesize reduction 23, result has 4.2 percent of original size [2023-11-23 21:54:00,301 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 14 treesize of output 1 [2023-11-23 21:54:00,308 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 35 [2023-11-23 21:54:00,323 WARN L214 Elim1Store]: Array PQE input equivalent to false [2023-11-23 21:54:00,331 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:54:00,335 INFO L349 Elim1Store]: treesize reduction 45, result has 2.2 percent of original size [2023-11-23 21:54:00,335 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 21 treesize of output 1 [2023-11-23 21:54:00,340 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:54:00,342 INFO L349 Elim1Store]: treesize reduction 23, result has 4.2 percent of original size [2023-11-23 21:54:00,342 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 14 treesize of output 1 [2023-11-23 21:54:00,420 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:54:00,420 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:54:00,420 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:00,420 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [474773933] [2023-11-23 21:54:00,420 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [474773933] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:54:00,421 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:54:00,421 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-11-23 21:54:00,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1754707468] [2023-11-23 21:54:00,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:54:00,421 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 21:54:00,421 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:00,422 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 21:54:00,422 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-11-23 21:54:00,422 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:00,422 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:00,422 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:00,422 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:00,422 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:00,423 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:54:00,423 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2023-11-23 21:54:00,423 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:00,683 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:00,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:00,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:54:00,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2023-11-23 21:54:00,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:54:00,688 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (7)] Ended with exit code 0 [2023-11-23 21:54:00,885 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:00,885 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:54:00,886 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:00,886 INFO L85 PathProgramCache]: Analyzing trace with hash -341853416, now seen corresponding path program 2 times [2023-11-23 21:54:00,886 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:00,886 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [171097127] [2023-11-23 21:54:00,886 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 21:54:00,887 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:00,887 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:00,888 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:00,890 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (8)] Waiting until timeout for monitored process [2023-11-23 21:54:00,987 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 21:54:00,987 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:54:00,990 INFO L262 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 26 conjunts are in the unsatisfiable core [2023-11-23 21:54:00,993 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:01,013 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:01,013 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:01,050 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:01,273 INFO L349 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2023-11-23 21:54:01,273 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 26 [2023-11-23 21:54:01,333 INFO L349 Elim1Store]: treesize reduction 24, result has 52.9 percent of original size [2023-11-23 21:54:01,333 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 23 treesize of output 37 [2023-11-23 21:54:01,391 INFO L349 Elim1Store]: treesize reduction 7, result has 12.5 percent of original size [2023-11-23 21:54:01,392 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 7 [2023-11-23 21:54:01,424 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 21:54:01,533 INFO L349 Elim1Store]: treesize reduction 21, result has 30.0 percent of original size [2023-11-23 21:54:01,533 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 44 treesize of output 44 [2023-11-23 21:54:01,585 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 21:54:01,599 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 21:54:02,226 INFO L349 Elim1Store]: treesize reduction 47, result has 45.3 percent of original size [2023-11-23 21:54:02,227 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 55 treesize of output 73 [2023-11-23 21:54:02,278 INFO L349 Elim1Store]: treesize reduction 12, result has 60.0 percent of original size [2023-11-23 21:54:02,280 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 40 treesize of output 43 [2023-11-23 21:54:02,325 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 5 [2023-11-23 21:54:02,368 INFO L349 Elim1Store]: treesize reduction 36, result has 2.7 percent of original size [2023-11-23 21:54:02,368 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 3 case distinctions, treesize of input 57 treesize of output 1 [2023-11-23 21:54:02,391 INFO L349 Elim1Store]: treesize reduction 58, result has 1.7 percent of original size [2023-11-23 21:54:02,392 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 52 treesize of output 1 [2023-11-23 21:54:02,683 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:54:02,683 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:54:03,011 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse0 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))) (and (or (not .cse0) (let ((.cse2 (= |c_~#inc_flag~0.base| |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|)) (.cse3 (= |c_~#inc_flag~0.base| |c_~#value~0.base|)) (.cse1 (select |c_#memory_int| |c_~#inc_flag~0.base|))) (and (or (forall ((v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32)))) (or (bvugt (select (select (store (store (store |c_#memory_int| |c_~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse1 |c_~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread1of1ForFork0_inc_~inc__vn~0#1|)) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|) (= (select v_DerPreprocessor_18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))) .cse2 .cse3) (or (not .cse2) (forall ((v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32))) (or (= (select v_DerPreprocessor_16 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (bvugt (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse1 |c_~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread1of1ForFork0_inc_~inc__vn~0#1|)) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|)))) (or (not .cse3) (forall ((v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (or (= (select v_DerPreprocessor_19 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (bvugt (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse1 |c_~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread1of1ForFork0_inc_~inc__vn~0#1|)) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))))))) (or .cse0 (forall ((v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (or (bvugt (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_20) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|) (= (select v_DerPreprocessor_20 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) is different from false [2023-11-23 21:54:04,012 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse2 (= |c_~#inc_flag~0.base| |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|)) (.cse3 (= |c_~#inc_flag~0.base| |c_~#value~0.base|))) (and (or (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32))) (let ((.cse0 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (let ((.cse1 (select (select .cse0 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store .cse0 |c_~#value~0.base| (store (select (store .cse0 |c_~#inc_flag~0.base| (store (select .cse0 |c_~#inc_flag~0.base|) |c_~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse1 (_ bv1 32)))) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse1)) (= (select v_DerPreprocessor_16 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (not (= (select (select .cse0 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))) (not .cse2)) (or (not .cse3) (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse4 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_19 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (let ((.cse5 (select (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store .cse4 |c_~#value~0.base| (store (select (store .cse4 |c_~#inc_flag~0.base| (store (select .cse4 |c_~#inc_flag~0.base|) |c_~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse5 (_ bv1 32)))) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse5)) (not (= (select (select .cse4 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (or (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse6 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (let ((.cse7 (select (select .cse6 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store .cse6 |c_~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store .cse6 |c_~#inc_flag~0.base| (store (select .cse6 |c_~#inc_flag~0.base|) |c_~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse7 (_ bv1 32)))) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse7)) (not (= (select (select .cse6 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))) .cse2 .cse3))) is different from false [2023-11-23 21:54:06,361 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse19 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse7 (= (select .cse19 |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))) (let ((.cse0 (not .cse7))) (and (or .cse0 (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse2 (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| (_ bv1 32))) |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread1of1ForFork0_inc_~inc__vn~0#1|)))) (let ((.cse4 (store (store .cse2 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_23) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (let ((.cse1 (select .cse4 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|))) (or (not (= (_ bv0 32) (select .cse1 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|))) (= (select v_DerPreprocessor_16 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (let ((.cse3 (select (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (select (store (store .cse2 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store .cse1 |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse3))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse3)))))))) (or (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (store (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_21) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (let ((.cse6 (select (select .cse5 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store .cse5 |~#inc_flag~0.base| (store (select .cse5 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse6 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse6)) (= (select v_DerPreprocessor_18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (= |~#inc_flag~0.base| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|) (not (= (_ bv0 32) (select (select .cse5 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|)))))) .cse7) (or .cse7 (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_24 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse11 (store (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_24) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (let ((.cse9 (select .cse11 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse10 (select (select .cse11 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse8 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (store .cse8 |c_~#value~0.base| (store (select (store .cse8 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store .cse9 |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse10 (_ bv1 32))))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse10)) (not (= (select .cse9 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (= (select v_DerPreprocessor_16 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (or (forall ((v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse15 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (let ((.cse12 (store (select .cse15 |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread1of1ForFork0_inc_~inc__vn~0#1|))) (let ((.cse13 (store (store (store .cse15 |c_~#value~0.base| .cse12) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (let ((.cse14 (select (select .cse13 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse12) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| (store (select .cse13 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse14 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse14)) (= (select v_DerPreprocessor_18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (= |~#inc_flag~0.base| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|) (not (= (select (select .cse13 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))))) .cse0) (or .cse0 (forall ((v_DerPreprocessor_25 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse16 (store (store (store |c_#memory_int| |c_~#value~0.base| (store (store .cse19 |~#inc_flag~0.offset| (_ bv1 32)) |c_~#value~0.offset| |c_thr1Thread1of1ForFork0_inc_~inc__vn~0#1|)) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_25) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_19 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (not (= (select (select .cse16 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse17 (select .cse16 |c_~#value~0.base|))) (let ((.cse18 (select .cse17 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (store .cse17 |~#inc_flag~0.offset| v_ArrVal_128) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse18))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse18))))))) (or (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse20 (store (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_26) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_19 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (not (= (select (select .cse20 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse21 (select .cse20 |c_~#value~0.base|))) (let ((.cse22 (select .cse21 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (store .cse21 |~#inc_flag~0.offset| v_ArrVal_128) |c_~#value~0.offset| (bvadd .cse22 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse22)))))) .cse7))))) is different from false [2023-11-23 21:54:06,665 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse12 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse8 (= (select .cse12 |c_~#value~0.offset|) |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1|))) (let ((.cse0 (not .cse8)) (.cse5 (bvadd |c_thr1Thread1of1ForFork0_inc_~inc__v~0#1| (_ bv1 32)))) (and (or .cse0 (forall ((v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse4 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (let ((.cse2 (store (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset| .cse5))) (let ((.cse1 (store (store (store .cse4 |c_~#value~0.base| .cse2) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (not (= (select (select .cse1 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse3 (select (select .cse1 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse2) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| (store (select .cse1 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse3 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse3)) (= (select v_DerPreprocessor_18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (= |~#inc_flag~0.base| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|))))))) (or (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse6 (store (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_21) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (let ((.cse7 (select (select .cse6 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store .cse6 |~#inc_flag~0.base| (store (select .cse6 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse7 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse7)) (= (select v_DerPreprocessor_18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (= |~#inc_flag~0.base| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|) (not (= (_ bv0 32) (select (select .cse6 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|)))))) .cse8) (or .cse0 (forall ((v_DerPreprocessor_25 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse11 (store (store (store |c_#memory_int| |c_~#value~0.base| (store (store .cse12 |~#inc_flag~0.offset| (_ bv1 32)) |c_~#value~0.offset| .cse5)) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_25) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_19 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (let ((.cse9 (select .cse11 |c_~#value~0.base|))) (let ((.cse10 (select .cse9 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (store .cse9 |~#inc_flag~0.offset| v_ArrVal_128) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse10))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse10))) (not (= (select (select .cse11 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (or .cse0 (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse13 (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| (_ bv1 32))) |c_~#value~0.base|) |c_~#value~0.offset| .cse5)))) (let ((.cse16 (store (store .cse13 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_23) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (let ((.cse14 (select .cse16 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse15 (select (select .cse16 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (select (store (store .cse13 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store .cse14 |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse15 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse15)) (= (select v_DerPreprocessor_16 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (not (= (select .cse14 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))))) (or .cse8 (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_24 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse20 (store (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_24) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (let ((.cse18 (select .cse20 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse19 (select (select .cse20 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse17 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (store .cse17 |c_~#value~0.base| (store (select (store .cse17 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store .cse18 |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse19 (_ bv1 32))))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse19)) (not (= (select .cse18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (= (select v_DerPreprocessor_16 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (or (forall ((v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse21 (store (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_26) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_19 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (not (= (select (select .cse21 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse22 (select .cse21 |c_~#value~0.base|))) (let ((.cse23 (select .cse22 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (store .cse22 |~#inc_flag~0.offset| v_ArrVal_128) |c_~#value~0.offset| (bvadd .cse23 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse23)))))) .cse8))))) is different from false [2023-11-23 21:54:06,803 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse3 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse4 (bvadd (select .cse3 |c_~#value~0.offset|) (_ bv1 32)))) (and (forall ((v_DerPreprocessor_25 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse0 (store (store (store |c_#memory_int| |c_~#value~0.base| (store (store .cse3 |~#inc_flag~0.offset| (_ bv1 32)) |c_~#value~0.offset| .cse4)) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_25) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (not (= (_ bv0 32) (select (select .cse0 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|))) (= (select v_DerPreprocessor_19 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (let ((.cse1 (select .cse0 |c_~#value~0.base|))) (let ((.cse2 (select .cse1 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (store .cse1 |~#inc_flag~0.offset| v_ArrVal_128) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse2))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse5 (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| (_ bv1 32))) |c_~#value~0.base|) |c_~#value~0.offset| .cse4)))) (let ((.cse8 (store (store .cse5 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_23) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (let ((.cse6 (select .cse8 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse7 (select (select .cse8 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (select (store (store .cse5 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store .cse6 |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse7 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse7)) (= (select v_DerPreprocessor_16 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (not (= (select .cse6 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))))) (forall ((v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse12 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (let ((.cse10 (store (select .cse12 |c_~#value~0.base|) |c_~#value~0.offset| .cse4))) (let ((.cse9 (store (store (store .cse12 |c_~#value~0.base| .cse10) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (not (= (select (select .cse9 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (= (select v_DerPreprocessor_18 |c_thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)) (let ((.cse11 (select (select .cse9 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse10) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| (store (select .cse9 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse11 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse11)) (= |~#inc_flag~0.base| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|))))))))) is different from false [2023-11-23 21:54:07,065 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse3 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse4 (bvadd (select .cse3 |c_~#value~0.offset|) (_ bv1 32)))) (and (forall ((v_DerPreprocessor_25 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse2 (store (store (store |c_#memory_int| |c_~#value~0.base| (store (store .cse3 |~#inc_flag~0.offset| (_ bv1 32)) |c_~#value~0.offset| .cse4)) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_25) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_19 (_ bv0 32)) (_ bv0 32)) (let ((.cse0 (select .cse2 |c_~#value~0.base|))) (let ((.cse1 (select .cse0 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (store .cse0 |~#inc_flag~0.offset| v_ArrVal_128) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse1))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse1))) (not (= (select (select .cse2 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32)) (_ bv0 32)))))) (forall ((v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse8 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32))))) (let ((.cse6 (store (select .cse8 |c_~#value~0.base|) |c_~#value~0.offset| .cse4))) (let ((.cse5 (store (store (store .cse8 |c_~#value~0.base| .cse6) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (not (= (select (select .cse5 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32)) (_ bv0 32))) (= (select v_DerPreprocessor_18 (_ bv0 32)) (_ bv0 32)) (let ((.cse7 (select (select .cse5 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse6) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| (store (select .cse5 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse7 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse7)) (= |~#inc_flag~0.base| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|)))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse9 (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| (_ bv1 32))) |c_~#value~0.base|) |c_~#value~0.offset| .cse4)))) (let ((.cse12 (store (store .cse9 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_23) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (let ((.cse10 (select .cse12 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse11 (select (select .cse12 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (select (store (store .cse9 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store .cse10 |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse11 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse11)) (not (= (select .cse10 (_ bv0 32)) (_ bv0 32))) (= (select v_DerPreprocessor_16 (_ bv0 32)) (_ bv0 32)))))))))) is different from false [2023-11-23 21:54:07,412 WARN L854 $PredicateComparison]: unable to prove that (and (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_16 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_ArrVal_119 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (store |c_#memory_int| |c_~#value~0.base| (let ((.cse4 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_119))) (store (select (store .cse4 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| (_ bv1 32))) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (select (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset|) (_ bv1 32))))))) (let ((.cse3 (store (store .cse0 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_23) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (let ((.cse1 (select .cse3 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse2 (select (select .cse3 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (select (store (store .cse0 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (store .cse1 |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse2 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_16) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (not (= (select .cse1 (_ bv0 32)) (_ bv0 32))) (= (select v_DerPreprocessor_16 (_ bv0 32)) (_ bv0 32))))))) (forall ((v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_18 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_17 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_119 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse9 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_119))) (let ((.cse8 (store (select .cse9 |~#inc_flag~0.base|) |~#inc_flag~0.offset| (_ bv1 32)))) (let ((.cse5 (store (select (store .cse9 |~#inc_flag~0.base| .cse8) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (select (select .cse9 |c_~#value~0.base|) |c_~#value~0.offset|) (_ bv1 32))))) (let ((.cse6 (store (store (store (store |c_#memory_int| |~#inc_flag~0.base| .cse8) |c_~#value~0.base| .cse5) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (= (select v_DerPreprocessor_18 (_ bv0 32)) (_ bv0 32)) (= |~#inc_flag~0.base| |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (let ((.cse7 (select (select .cse6 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| v_DerPreprocessor_17) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse5) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_22) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |~#inc_flag~0.base| (store (select .cse6 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_128)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse7))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_18) |c_~#value~0.base|) |c_~#value~0.offset|) .cse7)) (not (= (select (select .cse6 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32)) (_ bv0 32))) (= |~#inc_flag~0.base| |c_~#value~0.base|))))))) (forall ((v_DerPreprocessor_25 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_125 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_128 (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_119 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse12 (store (store (store |c_#memory_int| |c_~#value~0.base| (let ((.cse13 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_119) |c_~#value~0.base|))) (store (store .cse13 |~#inc_flag~0.offset| (_ bv1 32)) |c_~#value~0.offset| (bvadd (select .cse13 |c_~#value~0.offset|) (_ bv1 32))))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_25) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125))) (or (let ((.cse10 (select .cse12 |c_~#value~0.base|))) (let ((.cse11 (select .cse10 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_125) |c_~#value~0.base| (store (store .cse10 |~#inc_flag~0.offset| v_ArrVal_128) |c_~#value~0.offset| (bvadd .cse11 (_ bv1 32)))) |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_19) |c_~#value~0.base|) |c_~#value~0.offset|) .cse11))) (= (select v_DerPreprocessor_19 (_ bv0 32)) (_ bv0 32)) (not (= (select (select .cse12 |thr1Thread1of1ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32)) (_ bv0 32))))))) is different from false [2023-11-23 21:54:07,422 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 5 not checked. [2023-11-23 21:54:07,423 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:07,423 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [171097127] [2023-11-23 21:54:07,423 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [171097127] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:54:07,423 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:54:07,423 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 27 [2023-11-23 21:54:07,423 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [980180943] [2023-11-23 21:54:07,424 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:54:07,424 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2023-11-23 21:54:07,424 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:07,425 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2023-11-23 21:54:07,426 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=372, Unknown=9, NotChecked=322, Total=812 [2023-11-23 21:54:07,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:07,426 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:07,426 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 28 states have (on average 1.3571428571428572) internal successors, (38), 28 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:07,426 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:07,427 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:07,427 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:54:07,427 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2023-11-23 21:54:07,427 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:54:07,427 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:11,294 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0, 1] [2023-11-23 21:54:13,321 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0, 1] [2023-11-23 21:54:15,889 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:15,889 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:15,889 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:54:15,889 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2023-11-23 21:54:15,889 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:54:15,891 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2023-11-23 21:54:15,893 INFO L805 garLoopResultBuilder]: Registering result SAFE for location thr1Err1ASSERT_VIOLATIONERROR_FUNCTION (1 of 2 remaining) [2023-11-23 21:54:15,893 INFO L805 garLoopResultBuilder]: Registering result SAFE for location thr1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 2 remaining) [2023-11-23 21:54:15,899 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (8)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:16,094 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 8 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:16,101 INFO L445 BasicCegarLoop]: Path program histogram: [2, 2, 1, 1] [2023-11-23 21:54:16,102 INFO L307 ceAbstractionStarter]: Result for error location thr1Thread1of1ForFork0 was SAFE,SAFE (1/2) [2023-11-23 21:54:16,106 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:54:16,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2023-11-23 21:54:16,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:54:16,107 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2023-11-23 21:54:16,109 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (9)] Waiting until timeout for monitored process [2023-11-23 21:54:16,130 INFO L159 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2023-11-23 21:54:16,131 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2023-11-23 21:54:16,131 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@253c02d4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:54:16,131 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2023-11-23 21:54:16,208 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2023-11-23 21:54:16,209 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:16,209 INFO L85 PathProgramCache]: Analyzing trace with hash -1138696684, now seen corresponding path program 1 times [2023-11-23 21:54:16,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:16,209 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2078890660] [2023-11-23 21:54:16,209 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:16,209 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:16,209 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:16,210 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:16,211 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (10)] Waiting until timeout for monitored process [2023-11-23 21:54:16,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:16,300 INFO L262 TraceCheckSpWp]: Trace formula consists of 67 conjuncts, 1 conjunts are in the unsatisfiable core [2023-11-23 21:54:16,300 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:16,301 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:54:16,301 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:54:16,301 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:16,301 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2078890660] [2023-11-23 21:54:16,301 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2078890660] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:54:16,301 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:54:16,301 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-23 21:54:16,301 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [156681289] [2023-11-23 21:54:16,302 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:54:16,302 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2023-11-23 21:54:16,302 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:16,302 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2023-11-23 21:54:16,303 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2023-11-23 21:54:16,303 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:16,303 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:16,303 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:16,303 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:16,510 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:16,513 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (10)] Ended with exit code 0 [2023-11-23 21:54:16,712 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:16,712 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2023-11-23 21:54:16,713 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:16,713 INFO L85 PathProgramCache]: Analyzing trace with hash -210693399, now seen corresponding path program 1 times [2023-11-23 21:54:16,713 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:16,713 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [54381428] [2023-11-23 21:54:16,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:16,714 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:16,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:16,715 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:16,719 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (11)] Waiting until timeout for monitored process [2023-11-23 21:54:16,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:16,789 INFO L262 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 7 conjunts are in the unsatisfiable core [2023-11-23 21:54:16,790 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:16,807 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:16,808 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:16,864 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:16,923 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:54:16,924 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:54:16,924 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:16,924 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [54381428] [2023-11-23 21:54:16,924 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [54381428] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:54:16,924 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:54:16,924 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-23 21:54:16,924 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [66257605] [2023-11-23 21:54:16,924 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:54:16,924 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 21:54:16,925 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:16,925 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 21:54:16,925 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2023-11-23 21:54:16,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:16,925 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:16,925 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:16,925 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:16,925 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:17,023 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:17,023 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:17,029 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (11)] Ended with exit code 0 [2023-11-23 21:54:17,224 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:17,224 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2023-11-23 21:54:17,224 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:17,225 INFO L85 PathProgramCache]: Analyzing trace with hash 961626491, now seen corresponding path program 1 times [2023-11-23 21:54:17,225 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:17,225 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1891062921] [2023-11-23 21:54:17,225 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:17,225 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:17,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:17,226 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:17,228 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (12)] Waiting until timeout for monitored process [2023-11-23 21:54:17,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:54:17,296 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:54:17,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:54:17,346 INFO L130 FreeRefinementEngine]: Strategy WOLF found a feasible trace [2023-11-23 21:54:17,346 INFO L360 BasicCegarLoop]: Counterexample is feasible [2023-11-23 21:54:17,346 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 1 remaining) [2023-11-23 21:54:17,354 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (12)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:17,550 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:17,552 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2023-11-23 21:54:17,552 INFO L307 ceAbstractionStarter]: Result for error location ULTIMATE.start was UNSAFE (2/2) [2023-11-23 21:54:17,553 WARN L233 ceAbstractionStarter]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2023-11-23 21:54:17,553 INFO L514 ceAbstractionStarter]: Constructing petrified ICFG for 2 thread instances. [2023-11-23 21:54:17,590 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2023-11-23 21:54:17,592 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:54:17,592 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2023-11-23 21:54:17,592 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:54:17,593 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2023-11-23 21:54:17,602 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (13)] Waiting until timeout for monitored process [2023-11-23 21:54:17,604 INFO L159 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2023-11-23 21:54:17,604 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2023-11-23 21:54:17,604 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@253c02d4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:54:17,604 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2023-11-23 21:54:17,812 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2023-11-23 21:54:17,813 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:17,813 INFO L85 PathProgramCache]: Analyzing trace with hash 1572867083, now seen corresponding path program 1 times [2023-11-23 21:54:17,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:17,813 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1422684892] [2023-11-23 21:54:17,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:17,814 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:17,814 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:17,820 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:17,821 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (14)] Waiting until timeout for monitored process [2023-11-23 21:54:17,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:17,934 INFO L262 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 1 conjunts are in the unsatisfiable core [2023-11-23 21:54:17,935 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:17,936 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2023-11-23 21:54:17,936 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:54:17,936 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:17,937 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1422684892] [2023-11-23 21:54:17,937 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1422684892] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:54:17,937 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:54:17,937 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-23 21:54:17,937 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [469905058] [2023-11-23 21:54:17,937 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:54:17,937 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2023-11-23 21:54:17,938 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:17,938 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2023-11-23 21:54:17,938 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2023-11-23 21:54:17,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:17,938 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:17,939 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 8.0) internal successors, (16), 2 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:17,939 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:18,698 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:18,701 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (14)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:18,898 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:18,898 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2023-11-23 21:54:18,899 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:18,899 INFO L85 PathProgramCache]: Analyzing trace with hash -1861066133, now seen corresponding path program 1 times [2023-11-23 21:54:18,899 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:18,899 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1183365964] [2023-11-23 21:54:18,899 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:18,900 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:18,900 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:18,900 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:18,913 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (15)] Waiting until timeout for monitored process [2023-11-23 21:54:19,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:19,054 INFO L262 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 7 conjunts are in the unsatisfiable core [2023-11-23 21:54:19,056 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:19,075 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:19,075 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:19,110 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:19,181 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2023-11-23 21:54:19,181 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:54:19,181 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:19,181 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1183365964] [2023-11-23 21:54:19,181 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1183365964] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:54:19,181 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:54:19,182 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-23 21:54:19,182 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1016263392] [2023-11-23 21:54:19,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:54:19,182 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 21:54:19,182 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:19,183 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 21:54:19,183 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2023-11-23 21:54:19,183 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:19,183 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:19,183 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:19,183 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:19,183 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:20,399 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:20,400 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:20,404 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (15)] Ended with exit code 0 [2023-11-23 21:54:20,601 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 15 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:20,601 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2023-11-23 21:54:20,601 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:20,601 INFO L85 PathProgramCache]: Analyzing trace with hash -1549389063, now seen corresponding path program 1 times [2023-11-23 21:54:20,602 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:20,602 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [851494879] [2023-11-23 21:54:20,602 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:20,602 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:20,602 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:20,603 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:20,604 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (16)] Waiting until timeout for monitored process [2023-11-23 21:54:20,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:20,730 INFO L262 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 8 conjunts are in the unsatisfiable core [2023-11-23 21:54:20,732 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:20,752 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:20,753 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:20,785 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:20,875 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:20,943 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2023-11-23 21:54:20,943 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:54:20,992 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_228 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_228) |c_~#value~0.base|) |c_~#value~0.offset|) (_ bv0 32))) is different from false [2023-11-23 21:54:21,031 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 2 not checked. [2023-11-23 21:54:21,031 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:21,031 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [851494879] [2023-11-23 21:54:21,031 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [851494879] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:54:21,032 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:54:21,032 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2023-11-23 21:54:21,032 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1479313241] [2023-11-23 21:54:21,032 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:54:21,032 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2023-11-23 21:54:21,032 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:21,033 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2023-11-23 21:54:21,033 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=19, Unknown=1, NotChecked=8, Total=42 [2023-11-23 21:54:21,033 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:21,033 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:21,033 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 5.571428571428571) internal successors, (39), 6 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:21,033 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:21,033 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:21,033 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:21,186 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:21,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:21,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:21,194 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (16)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:21,387 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:21,388 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2023-11-23 21:54:21,388 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:21,388 INFO L85 PathProgramCache]: Analyzing trace with hash 441798315, now seen corresponding path program 1 times [2023-11-23 21:54:21,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:21,388 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1870259940] [2023-11-23 21:54:21,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:21,388 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:21,389 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:21,389 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:21,390 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (17)] Waiting until timeout for monitored process [2023-11-23 21:54:21,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:54:21,494 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:54:21,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:54:21,569 INFO L130 FreeRefinementEngine]: Strategy WOLF found a feasible trace [2023-11-23 21:54:21,569 INFO L360 BasicCegarLoop]: Counterexample is feasible [2023-11-23 21:54:21,569 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 1 remaining) [2023-11-23 21:54:21,576 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (17)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:21,769 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:21,771 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2023-11-23 21:54:21,771 INFO L307 ceAbstractionStarter]: Result for error location ULTIMATE.start was UNSAFE (1/3) [2023-11-23 21:54:21,771 WARN L233 ceAbstractionStarter]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2023-11-23 21:54:21,771 INFO L514 ceAbstractionStarter]: Constructing petrified ICFG for 3 thread instances. [2023-11-23 21:54:21,816 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2023-11-23 21:54:21,818 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:54:21,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2023-11-23 21:54:21,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2023-11-23 21:54:21,820 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2023-11-23 21:54:21,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (18)] Waiting until timeout for monitored process [2023-11-23 21:54:21,823 INFO L159 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2023-11-23 21:54:21,824 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == thr1Thread3of3ForFork0 ======== [2023-11-23 21:54:21,824 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@253c02d4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-11-23 21:54:21,824 INFO L358 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2023-11-23 21:54:22,215 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:54:22,215 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:22,215 INFO L85 PathProgramCache]: Analyzing trace with hash 631038700, now seen corresponding path program 1 times [2023-11-23 21:54:22,215 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:22,215 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1964272398] [2023-11-23 21:54:22,216 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:22,216 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:22,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:22,222 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:22,256 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (19)] Waiting until timeout for monitored process [2023-11-23 21:54:22,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:22,358 INFO L262 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 1 conjunts are in the unsatisfiable core [2023-11-23 21:54:22,360 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:22,361 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2023-11-23 21:54:22,361 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:54:22,361 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:22,361 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1964272398] [2023-11-23 21:54:22,361 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1964272398] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:54:22,361 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:54:22,361 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-23 21:54:22,361 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1269694354] [2023-11-23 21:54:22,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:54:22,362 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2023-11-23 21:54:22,362 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:22,362 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2023-11-23 21:54:22,362 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2023-11-23 21:54:22,362 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:22,362 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:22,362 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 10.0) internal successors, (20), 2 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:22,363 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:23,205 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:23,210 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (19)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:23,408 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:23,408 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:54:23,409 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:23,409 INFO L85 PathProgramCache]: Analyzing trace with hash -1555439647, now seen corresponding path program 1 times [2023-11-23 21:54:23,409 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:23,409 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [541244439] [2023-11-23 21:54:23,409 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:23,409 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:23,409 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:23,410 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:23,412 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (20)] Waiting until timeout for monitored process [2023-11-23 21:54:23,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:23,654 INFO L262 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 7 conjunts are in the unsatisfiable core [2023-11-23 21:54:23,656 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:23,679 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:23,679 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:23,714 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:23,779 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2023-11-23 21:54:23,780 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:54:23,780 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:23,780 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [541244439] [2023-11-23 21:54:23,780 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [541244439] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:54:23,780 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:54:23,780 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-23 21:54:23,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [694437073] [2023-11-23 21:54:23,781 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:54:23,781 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 21:54:23,781 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:23,782 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 21:54:23,782 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2023-11-23 21:54:23,782 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:23,782 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:23,782 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 4 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:23,783 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:23,783 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:24,609 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:24,610 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:24,619 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (20)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:24,810 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 20 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:24,811 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:54:24,811 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:24,811 INFO L85 PathProgramCache]: Analyzing trace with hash -278492013, now seen corresponding path program 1 times [2023-11-23 21:54:24,811 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:24,811 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [231738952] [2023-11-23 21:54:24,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:24,812 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:24,812 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:24,812 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:24,813 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (21)] Waiting until timeout for monitored process [2023-11-23 21:54:24,994 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:24,997 INFO L262 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 8 conjunts are in the unsatisfiable core [2023-11-23 21:54:24,999 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:25,022 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:25,022 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:25,050 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:25,145 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:25,200 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2023-11-23 21:54:25,200 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:54:25,236 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_328 (Array (_ BitVec 32) (_ BitVec 32)))) (= (_ bv0 32) (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_328) |c_~#value~0.base|) |c_~#value~0.offset|))) is different from false [2023-11-23 21:54:25,276 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 2 not checked. [2023-11-23 21:54:25,277 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:25,277 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [231738952] [2023-11-23 21:54:25,277 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [231738952] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:54:25,277 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:54:25,278 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2023-11-23 21:54:25,278 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1698230825] [2023-11-23 21:54:25,278 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:54:25,278 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2023-11-23 21:54:25,278 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:25,279 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2023-11-23 21:54:25,279 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=19, Unknown=1, NotChecked=8, Total=42 [2023-11-23 21:54:25,279 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:25,279 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:25,279 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 6.857142857142857) internal successors, (48), 6 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:25,279 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:25,279 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:25,279 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:26,410 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:26,410 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:26,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:26,417 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (21)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:26,611 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:26,611 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting thr1Err1ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:54:26,612 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:26,612 INFO L85 PathProgramCache]: Analyzing trace with hash 332272801, now seen corresponding path program 1 times [2023-11-23 21:54:26,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:26,613 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2072719826] [2023-11-23 21:54:26,613 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:26,613 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:26,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:26,615 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:26,617 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (22)] Waiting until timeout for monitored process [2023-11-23 21:54:26,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:26,781 INFO L262 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2023-11-23 21:54:26,782 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:26,797 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:26,798 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:26,823 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:26,917 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:27,006 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:27,056 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2023-11-23 21:54:27,057 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:54:27,089 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_355 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_355) |c_~#value~0.base|) |c_~#value~0.offset|) (_ bv0 32))) is different from false [2023-11-23 21:54:27,193 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 4 not checked. [2023-11-23 21:54:27,193 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:27,193 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2072719826] [2023-11-23 21:54:27,193 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2072719826] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:54:27,193 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:54:27,193 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2023-11-23 21:54:27,194 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [208776910] [2023-11-23 21:54:27,194 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:54:27,194 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2023-11-23 21:54:27,194 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:27,195 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2023-11-23 21:54:27,195 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=19, Unknown=1, NotChecked=8, Total=42 [2023-11-23 21:54:27,195 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:27,195 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:27,195 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 7.285714285714286) internal successors, (51), 6 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:27,195 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:27,195 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:27,195 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:27,195 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:28,552 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:28,552 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:28,552 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:28,553 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:28,559 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (22)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:28,753 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:28,754 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:54:28,754 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:28,754 INFO L85 PathProgramCache]: Analyzing trace with hash 2136126883, now seen corresponding path program 1 times [2023-11-23 21:54:28,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:28,754 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1776722877] [2023-11-23 21:54:28,755 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:54:28,755 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:28,755 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:28,756 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:28,762 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (23)] Waiting until timeout for monitored process [2023-11-23 21:54:28,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:54:28,925 INFO L262 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 26 conjunts are in the unsatisfiable core [2023-11-23 21:54:28,928 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:28,967 INFO L349 Elim1Store]: treesize reduction 22, result has 35.3 percent of original size [2023-11-23 21:54:28,967 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 19 treesize of output 27 [2023-11-23 21:54:29,019 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:29,167 INFO L349 Elim1Store]: treesize reduction 48, result has 32.4 percent of original size [2023-11-23 21:54:29,168 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 28 treesize of output 36 [2023-11-23 21:54:29,342 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 25 [2023-11-23 21:54:29,422 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:29,550 INFO L349 Elim1Store]: treesize reduction 48, result has 32.4 percent of original size [2023-11-23 21:54:29,550 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 28 treesize of output 36 [2023-11-23 21:54:29,688 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 25 [2023-11-23 21:54:29,760 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:29,897 INFO L349 Elim1Store]: treesize reduction 12, result has 42.9 percent of original size [2023-11-23 21:54:29,897 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 20 treesize of output 22 [2023-11-23 21:54:30,137 INFO L349 Elim1Store]: treesize reduction 17, result has 46.9 percent of original size [2023-11-23 21:54:30,137 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 34 [2023-11-23 21:54:30,186 INFO L349 Elim1Store]: treesize reduction 21, result has 30.0 percent of original size [2023-11-23 21:54:30,187 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 31 treesize of output 33 [2023-11-23 21:54:30,267 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2023-11-23 21:54:30,267 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:54:30,414 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse0 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|)))) (and (or .cse0 (forall ((v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store |c_#memory_int| |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_27) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (or (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse1 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse1 |c_~#value~0.base| (store (select .cse1 |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) (not .cse0)))) is different from false [2023-11-23 21:54:30,450 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse0 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|)))) (and (or .cse0 (forall ((v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store |c_#memory_int| |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_27) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (or (not .cse0) (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse1 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse1 |c_~#value~0.base| (store (select .cse1 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (_ bv1 32))))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))))) is different from false [2023-11-23 21:54:30,722 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_387 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (or (not (= (select |c_#valid| |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|) (_ bv0 1))) (let ((.cse2 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_387))) (let ((.cse1 (select (select .cse2 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse0 (store .cse2 |~#inc_flag~0.base| (store (select .cse2 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse0 |c_~#value~0.base| (store (select .cse0 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse1 (_ bv1 32))))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse1))))) is different from false [2023-11-23 21:54:33,942 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 2 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 2 not checked. [2023-11-23 21:54:33,943 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:54:33,943 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1776722877] [2023-11-23 21:54:33,943 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1776722877] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:54:33,943 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:54:33,943 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 10] total 18 [2023-11-23 21:54:33,943 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1761895828] [2023-11-23 21:54:33,943 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:54:33,944 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2023-11-23 21:54:33,944 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:54:33,945 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2023-11-23 21:54:33,945 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=180, Unknown=42, NotChecked=96, Total=380 [2023-11-23 21:54:33,945 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:33,945 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:54:33,945 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 19 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:54:33,946 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:33,946 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:33,946 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:33,946 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:33,946 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:41,344 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2023-11-23 21:54:43,347 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2023-11-23 21:54:45,719 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2023-11-23 21:54:47,751 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2023-11-23 21:54:48,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:54:48,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:48,298 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:48,298 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:54:48,298 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2023-11-23 21:54:48,309 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (23)] Forceful destruction successful, exit code 0 [2023-11-23 21:54:48,499 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 23 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:48,499 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:54:48,499 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:54:48,499 INFO L85 PathProgramCache]: Analyzing trace with hash 1795423590, now seen corresponding path program 2 times [2023-11-23 21:54:48,499 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:54:48,500 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1602559431] [2023-11-23 21:54:48,500 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 21:54:48,500 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:54:48,500 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:54:48,500 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:54:48,502 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (24)] Waiting until timeout for monitored process [2023-11-23 21:54:48,669 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 21:54:48,670 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:54:48,673 INFO L262 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 21 conjunts are in the unsatisfiable core [2023-11-23 21:54:48,676 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:54:48,729 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:54:48,730 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:54:48,785 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:49,110 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:49,406 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:49,858 INFO L349 Elim1Store]: treesize reduction 17, result has 29.2 percent of original size [2023-11-23 21:54:49,858 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 35 treesize of output 18 [2023-11-23 21:54:49,932 INFO L349 Elim1Store]: treesize reduction 17, result has 29.2 percent of original size [2023-11-23 21:54:49,932 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 49 treesize of output 18 [2023-11-23 21:54:49,958 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 11 [2023-11-23 21:54:50,020 INFO L349 Elim1Store]: treesize reduction 67, result has 1.5 percent of original size [2023-11-23 21:54:50,021 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 3 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 59 treesize of output 1 [2023-11-23 21:54:50,068 INFO L349 Elim1Store]: treesize reduction 37, result has 2.6 percent of original size [2023-11-23 21:54:50,069 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 3 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 2 case distinctions, treesize of input 64 treesize of output 1 [2023-11-23 21:54:50,286 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:54:50,362 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2023-11-23 21:54:50,362 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:54:51,249 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse2 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse0 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select .cse2 |c_~#value~0.offset|)))) (and (or .cse0 (forall ((v_DerPreprocessor_29 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (bvugt (select (select (store (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_29) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (or (let ((.cse5 (store .cse2 |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|))) (and (forall ((v_DerPreprocessor_32 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (or (= |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| |~#inc_flag~0.offset|) (bvugt (select (select (store (let ((.cse1 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse2 |~#inc_flag~0.offset| v_DerPreprocessor_32) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|)))) (store .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|) (= |c_~#value~0.offset| |~#inc_flag~0.offset|))) (forall ((v_ArrVal_425 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|) (bvugt (select (select (store (let ((.cse4 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_425)))) (let ((.cse3 (store (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|))) (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_31) |c_~#value~0.base| .cse3) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse4 |c_~#value~0.base| .cse3) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (forall ((v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store .cse5 |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) (forall ((v_ArrVal_425 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse7 (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_425)))) (let ((.cse6 (store (select .cse7 |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|))) (store (store |c_#memory_int| |c_~#value~0.base| .cse6) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse7 |c_~#value~0.base| .cse6) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) (forall ((v_DerPreprocessor_30 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |c_~#value~0.base|) (bvugt (select (select (store (let ((.cse8 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse2 |~#inc_flag~0.offset| v_DerPreprocessor_30) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|)))) (store .cse8 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse8 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|) (= |c_~#value~0.offset| |~#inc_flag~0.offset|))) (forall ((v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse9 (store |c_#memory_int| |c_~#value~0.base| .cse5))) (store .cse9 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse9 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)))) (not .cse0))))) is different from false [2023-11-23 21:54:51,653 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse5 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse0 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select .cse5 |c_~#value~0.offset|)))) (and (or .cse0 (forall ((v_DerPreprocessor_29 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (bvugt (select (select (store (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_29) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (or (let ((.cse3 (bvadd |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (_ bv1 32)))) (let ((.cse8 (store .cse5 |c_~#value~0.offset| .cse3))) (and (forall ((v_ArrVal_425 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|) (bvugt (select (select (store (let ((.cse2 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_425)))) (let ((.cse1 (store (select .cse2 |c_~#value~0.base|) |c_~#value~0.offset| .cse3))) (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_31) |c_~#value~0.base| .cse1) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse2 |c_~#value~0.base| .cse1) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (forall ((v_DerPreprocessor_30 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |c_~#value~0.base|) (bvugt (select (select (store (let ((.cse4 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse5 |~#inc_flag~0.offset| v_DerPreprocessor_30) |c_~#value~0.offset| .cse3)))) (store .cse4 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse4 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|) (= |c_~#value~0.offset| |~#inc_flag~0.offset|))) (forall ((v_DerPreprocessor_32 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (or (= |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| |~#inc_flag~0.offset|) (bvugt (select (select (store (let ((.cse6 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse5 |~#inc_flag~0.offset| v_DerPreprocessor_32) |c_~#value~0.offset| .cse3)))) (store .cse6 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse6 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|) (= |c_~#value~0.offset| |~#inc_flag~0.offset|))) (forall ((v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse7 (store |c_#memory_int| |c_~#value~0.base| .cse8))) (store .cse7 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse7 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) (forall ((v_ArrVal_425 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse10 (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_425)))) (let ((.cse9 (store (select .cse10 |c_~#value~0.base|) |c_~#value~0.offset| .cse3))) (store (store |c_#memory_int| |c_~#value~0.base| .cse9) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse10 |c_~#value~0.base| .cse9) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) (forall ((v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store .cse8 |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))))) (not .cse0))))) is different from false [2023-11-23 21:55:00,818 WARN L854 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_422 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_422) |c_~#value~0.base|))) (let ((.cse1 (select .cse0 |c_~#value~0.offset|))) (bvugt (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (store .cse0 |c_~#value~0.offset| (bvadd .cse1 (_ bv1 32))) (_ bv0 32) (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) .cse1)))) (forall ((v_ArrVal_422 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_425 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse5 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_422))) (let ((.cse4 (select (select .cse5 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse3 (store .cse5 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse5 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_425)))) (let ((.cse2 (store (select .cse3 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse4 (_ bv1 32))))) (store (store |c_#memory_int| |c_~#value~0.base| .cse2) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse3 |c_~#value~0.base| .cse2) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32) (_ bv1 32))))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) .cse4)))) (forall ((v_ArrVal_422 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_30 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |c_~#value~0.base|) (= |c_~#value~0.offset| |~#inc_flag~0.offset|) (let ((.cse7 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_422))) (let ((.cse8 (select .cse7 |c_~#value~0.base|))) (let ((.cse9 (select .cse8 |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse6 (store (store .cse8 |~#inc_flag~0.offset| v_DerPreprocessor_30) |c_~#value~0.offset| (bvadd .cse9 (_ bv1 32))))) (store (store |c_#memory_int| |c_~#value~0.base| .cse6) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse7 |c_~#value~0.base| .cse6) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32) (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) .cse9)))))) (forall ((v_ArrVal_422 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_32 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (or (= |~#inc_flag~0.offset| (_ bv0 32)) (let ((.cse11 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_422))) (let ((.cse12 (select .cse11 |c_~#value~0.base|))) (let ((.cse13 (select .cse12 |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse10 (store (store .cse12 |~#inc_flag~0.offset| v_DerPreprocessor_32) |c_~#value~0.offset| (bvadd .cse13 (_ bv1 32))))) (store (store |c_#memory_int| |c_~#value~0.base| .cse10) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse11 |c_~#value~0.base| .cse10) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32) (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) .cse13)))) (= |c_~#value~0.offset| |~#inc_flag~0.offset|))) (forall ((v_ArrVal_422 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_425 (_ BitVec 32)) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (or (let ((.cse17 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_422))) (let ((.cse16 (select (select .cse17 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse15 (store .cse17 |~#inc_flag~0.base| (store (select .cse17 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_425)))) (let ((.cse14 (store (select .cse15 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse16 (_ bv1 32))))) (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_31) |c_~#value~0.base| .cse14) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse15 |c_~#value~0.base| .cse14) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32) (_ bv1 32))))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) .cse16))) (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|))) (forall ((v_ArrVal_422 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_430 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse19 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_422))) (let ((.cse20 (select .cse19 |c_~#value~0.base|))) (let ((.cse21 (select .cse20 |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse18 (store .cse20 |c_~#value~0.offset| (bvadd .cse21 (_ bv1 32))))) (store (store |c_#memory_int| |c_~#value~0.base| .cse18) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse19 |c_~#value~0.base| .cse18) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32) (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_430) |c_~#value~0.base|) |c_~#value~0.offset|) .cse21)))))) is different from false [2023-11-23 21:55:08,997 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 7 not checked. [2023-11-23 21:55:08,997 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:55:08,997 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1602559431] [2023-11-23 21:55:08,997 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1602559431] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:55:08,997 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:55:08,997 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 7] total 13 [2023-11-23 21:55:08,998 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1125426666] [2023-11-23 21:55:08,998 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:55:08,998 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2023-11-23 21:55:08,998 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:55:08,999 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2023-11-23 21:55:08,999 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=87, Unknown=12, NotChecked=66, Total=210 [2023-11-23 21:55:08,999 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:08,999 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:55:08,999 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 4.071428571428571) internal successors, (57), 14 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:55:08,999 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:08,999 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:08,999 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:08,999 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:08,999 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 12 states. [2023-11-23 21:55:08,999 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:14,518 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse2 (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|))) (let ((.cse1 (bvadd .cse2 (_ bv1 32))) (.cse4 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| .cse2))) (and (forall ((|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32))) (or (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse0 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse0 |c_~#value~0.base| (store (select .cse0 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (not (= (select |c_#valid| |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|) (_ bv0 1))))) (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse3 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse3 |c_~#value~0.base| (store (select .cse3 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (or .cse4 (forall ((v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store |c_#memory_int| |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_27) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (or (not .cse4) (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse5 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse5 |c_~#value~0.base| (store (select .cse5 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (_ bv1 32))))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (forall ((v_ArrVal_387 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_392 (_ BitVec 32)) (v_ArrVal_386 (_ BitVec 1)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22| (_ BitVec 32))) (or (not (= (select |c_#valid| |v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22|) (_ bv0 1))) (not (= (_ bv0 1) (select (store |c_#valid| |v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22| v_ArrVal_386) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|))) (let ((.cse8 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_387))) (let ((.cse7 (select (select .cse8 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse6 (store .cse8 |~#inc_flag~0.base| (store (select .cse8 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse6 |c_~#value~0.base| (store (select .cse6 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse7 (_ bv1 32))))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse7)))))))) is different from false [2023-11-23 21:55:16,652 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:16,653 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:16,653 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:16,653 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:16,653 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2023-11-23 21:55:16,662 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:55:16,668 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (24)] Forceful destruction successful, exit code 0 [2023-11-23 21:55:16,862 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 24 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:55:16,863 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:55:16,863 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:55:16,863 INFO L85 PathProgramCache]: Analyzing trace with hash 631326540, now seen corresponding path program 1 times [2023-11-23 21:55:16,863 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:55:16,863 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1412202796] [2023-11-23 21:55:16,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:55:16,864 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:55:16,864 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:55:16,865 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:55:16,866 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (25)] Waiting until timeout for monitored process [2023-11-23 21:55:17,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:55:17,018 INFO L262 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 6 conjunts are in the unsatisfiable core [2023-11-23 21:55:17,020 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:55:17,194 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 8 [2023-11-23 21:55:17,229 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:55:17,298 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 12 [2023-11-23 21:55:17,374 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 42 [2023-11-23 21:55:17,422 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:55:17,530 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 17 [2023-11-23 21:55:17,577 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:55:17,578 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:55:17,610 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:55:17,625 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 8 [2023-11-23 21:55:17,670 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:55:17,671 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:55:17,701 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 37 [2023-11-23 21:55:17,738 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:55:17,781 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 17 [2023-11-23 21:55:17,841 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:55:17,842 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:55:17,915 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:55:17,916 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2023-11-23 21:55:18,161 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2023-11-23 21:55:18,161 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:55:18,162 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:55:18,162 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1412202796] [2023-11-23 21:55:18,162 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1412202796] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:55:18,162 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:55:18,162 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-11-23 21:55:18,162 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [972389866] [2023-11-23 21:55:18,162 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:55:18,162 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 21:55:18,162 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:55:18,163 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 21:55:18,163 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-11-23 21:55:18,163 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:18,163 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:55:18,163 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.6) internal successors, (33), 5 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:55:18,164 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:18,164 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:18,164 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:18,164 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:18,164 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 13 states. [2023-11-23 21:55:18,164 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:55:18,164 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:22,456 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:55:22,457 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:22,457 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:22,457 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:55:22,460 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2023-11-23 21:55:22,460 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:55:22,460 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:55:22,473 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (25)] Forceful destruction successful, exit code 0 [2023-11-23 21:55:22,661 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:55:22,661 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:55:22,661 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:55:22,661 INFO L85 PathProgramCache]: Analyzing trace with hash 1794706500, now seen corresponding path program 2 times [2023-11-23 21:55:22,661 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:55:22,662 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [554863810] [2023-11-23 21:55:22,662 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 21:55:22,662 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:55:22,662 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:55:22,663 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:55:22,663 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (26)] Waiting until timeout for monitored process [2023-11-23 21:55:22,825 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 21:55:22,825 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:55:22,828 INFO L262 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 26 conjunts are in the unsatisfiable core [2023-11-23 21:55:22,831 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:55:22,963 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:55:22,963 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:55:23,214 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:55:24,061 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:55:24,879 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:55:26,330 INFO L349 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2023-11-23 21:55:26,330 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 35 treesize of output 18 [2023-11-23 21:55:26,949 INFO L349 Elim1Store]: treesize reduction 41, result has 14.6 percent of original size [2023-11-23 21:55:26,949 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 3 case distinctions, treesize of input 49 treesize of output 18 [2023-11-23 21:55:27,336 INFO L349 Elim1Store]: treesize reduction 17, result has 29.2 percent of original size [2023-11-23 21:55:27,337 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 22 treesize of output 18 [2023-11-23 21:55:27,984 INFO L349 Elim1Store]: treesize reduction 52, result has 23.5 percent of original size [2023-11-23 21:55:27,985 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 3 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 59 treesize of output 65 [2023-11-23 21:55:28,043 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 1 [2023-11-23 21:55:28,619 INFO L349 Elim1Store]: treesize reduction 24, result has 36.8 percent of original size [2023-11-23 21:55:28,619 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 3 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 2 case distinctions, treesize of input 64 treesize of output 69 [2023-11-23 21:55:28,770 INFO L224 Elim1Store]: Index analysis took 117 ms [2023-11-23 21:55:28,774 INFO L349 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2023-11-23 21:55:28,774 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 70 treesize of output 67 [2023-11-23 21:55:28,847 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2023-11-23 21:55:28,902 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 1 [2023-11-23 21:55:30,557 INFO L349 Elim1Store]: treesize reduction 21, result has 30.0 percent of original size [2023-11-23 21:55:30,558 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 423 treesize of output 385 [2023-11-23 21:55:30,599 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 245 treesize of output 246 [2023-11-23 21:55:30,912 INFO L349 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2023-11-23 21:55:30,912 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 240 treesize of output 250 [2023-11-23 21:55:31,049 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2023-11-23 21:55:31,848 INFO L349 Elim1Store]: treesize reduction 24, result has 38.5 percent of original size [2023-11-23 21:55:31,848 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 3 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 4 new quantified variables, introduced 3 case distinctions, treesize of input 152 treesize of output 190 [2023-11-23 21:55:32,213 INFO L173 IndexEqualityManager]: detected equality via solver [2023-11-23 21:55:32,247 INFO L349 Elim1Store]: treesize reduction 18, result has 5.3 percent of original size [2023-11-23 21:55:32,247 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 7 [2023-11-23 21:55:32,522 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 21:55:32,757 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 21:55:33,197 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 21:55:33,267 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 16 [2023-11-23 21:55:33,511 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 21:55:33,511 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 15 treesize of output 19 [2023-11-23 21:55:39,159 INFO L349 Elim1Store]: treesize reduction 25, result has 32.4 percent of original size [2023-11-23 21:55:39,160 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 3 case distinctions, treesize of input 81 treesize of output 86 [2023-11-23 21:55:39,216 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:55:41,039 INFO L349 Elim1Store]: treesize reduction 37, result has 37.3 percent of original size [2023-11-23 21:55:41,039 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 76 treesize of output 80 [2023-11-23 21:55:41,745 INFO L349 Elim1Store]: treesize reduction 32, result has 49.2 percent of original size [2023-11-23 21:55:41,746 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 47 treesize of output 61 [2023-11-23 21:55:44,080 INFO L349 Elim1Store]: treesize reduction 203, result has 20.4 percent of original size [2023-11-23 21:55:44,081 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 5 new quantified variables, introduced 10 case distinctions, treesize of input 71 treesize of output 94 [2023-11-23 21:55:44,118 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 69 treesize of output 56 [2023-11-23 21:55:44,295 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 21:55:44,295 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 22 treesize of output 27 [2023-11-23 21:55:45,165 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2023-11-23 21:55:45,165 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:55:46,364 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse3 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|)))) (and (or (let ((.cse1 (= |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |c_~#inc_flag~0.base|)) (.cse0 (select |c_#memory_int| |c_~#inc_flag~0.base|)) (.cse2 (= |c_~#inc_flag~0.base| |c_~#value~0.base|))) (and (or (forall ((v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse0 |c_~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|)) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) (not .cse1)) (or (forall ((v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store (store (store |c_#memory_int| |c_~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse0 |c_~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|)) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) .cse1 .cse2) (or (forall ((v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (select (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse0 |c_~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|)) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|)) (not .cse2)))) (not .cse3)) (or .cse3 (forall ((v_DerPreprocessor_46 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store |c_#memory_int| |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_46) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))))) is different from false [2023-11-23 21:55:51,825 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 24 [2023-11-23 21:55:52,216 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 24 [2023-11-23 21:55:52,696 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse10 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse0 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select .cse10 |c_~#value~0.offset|)))) (and (or .cse0 (and (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_52 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse1 (store (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_52) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (not (= (select (select .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse2 (select .cse1 |c_~#value~0.base|))) (let ((.cse3 (select .cse2 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (store .cse2 |~#inc_flag~0.offset| v_ArrVal_517) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse3))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse3)))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_prenex_84 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_85 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (v_DerPreprocessor_52 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse7 (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_52) |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_85))) (let ((.cse5 (select .cse7 |~#inc_flag~0.base|))) (or (let ((.cse6 (select (select .cse7 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse4 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_85))) (store .cse4 |c_~#value~0.base| (store (select (store .cse4 |~#inc_flag~0.base| (store .cse5 |~#inc_flag~0.offset| v_prenex_84)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse6)))) |~#inc_flag~0.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse6)) (not (= (select .cse5 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_86 (_ BitVec 32)) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_87 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_52 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse8 (store (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_52) |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_87))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (not (= (select (select .cse8 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (= |~#inc_flag~0.base| |c_~#value~0.base|) (let ((.cse9 (select (select .cse8 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_87) |~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store .cse8 |~#inc_flag~0.base| (store (select .cse8 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_prenex_86)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse9 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse9))))))) (or (and (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (store (store .cse10 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse15 (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse16 (store (select .cse15 |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|))) (let ((.cse12 (store |c_#memory_int| |c_~#value~0.base| .cse16))) (let ((.cse14 (store (store .cse12 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse15 |c_~#value~0.base| .cse16) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (let ((.cse11 (select .cse14 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|))) (or (not (= (select .cse11 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse13 (select (select .cse14 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (select (store (store .cse12 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store .cse11 |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse13 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse13))))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_51 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse21 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse17 (store (select .cse21 |c_~#value~0.base|) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|))) (let ((.cse18 (store (select (store .cse21 |c_~#value~0.base| .cse17) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (let ((.cse19 (store (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_51) |c_~#value~0.base| .cse17) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse18) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (let ((.cse20 (select (select .cse19 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse17) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse18) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| (store (select .cse19 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse20))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse20)) (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (not (= (select (select .cse19 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (= |~#inc_flag~0.base| |c_~#value~0.base|))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse22 (store (let ((.cse25 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse10 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| |c_thr1Thread3of3ForFork0_inc_~inc__vn~0#1|)))) (store .cse25 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse25 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (not (= (select (select .cse22 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse23 (select .cse22 |c_~#value~0.base|))) (let ((.cse24 (select .cse23 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (store .cse23 |~#inc_flag~0.offset| v_ArrVal_517) |c_~#value~0.offset| (bvadd .cse24 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse24))))))) (not .cse0))))) is different from false [2023-11-23 21:56:03,996 WARN L854 $PredicateComparison]: unable to prove that (and (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (v_ArrVal_507 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse6 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_507))) (let ((.cse4 (store .cse6 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse6 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse5 (store (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (select (select .cse6 |c_~#value~0.base|) |c_~#value~0.offset|) (_ bv1 32))))) (let ((.cse0 (store |c_#memory_int| |c_~#value~0.base| .cse5))) (let ((.cse3 (store (store .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse4 |c_~#value~0.base| .cse5) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (let ((.cse1 (select .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse2 (select (select .cse3 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (select (store (store .cse0 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store .cse1 |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse2 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (not (= (select .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (v_ArrVal_507 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse9 (store (let ((.cse11 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_507))) (let ((.cse10 (let ((.cse12 (select .cse11 |c_~#value~0.base|))) (store (store .cse12 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| (bvadd (select .cse12 |c_~#value~0.offset|) (_ bv1 32)))))) (store (store |c_#memory_int| |c_~#value~0.base| .cse10) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse11 |c_~#value~0.base| .cse10) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (let ((.cse7 (select .cse9 |c_~#value~0.base|))) (let ((.cse8 (select .cse7 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (store .cse7 |~#inc_flag~0.offset| v_ArrVal_517) |c_~#value~0.offset| (bvadd .cse8 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse8))) (not (= (select (select .cse9 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (v_ArrVal_507 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (let ((.cse13 (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_507) |c_~#value~0.base|))) (store (store .cse13 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| (bvadd (select .cse13 |c_~#value~0.offset|) (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (v_ArrVal_507 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_51 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse19 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_507))) (let ((.cse18 (store .cse19 |~#inc_flag~0.base| (store (select .cse19 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse14 (store (select .cse18 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (select (select .cse19 |c_~#value~0.base|) |c_~#value~0.offset|) (_ bv1 32))))) (let ((.cse15 (store (select (store .cse18 |c_~#value~0.base| .cse14) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (let ((.cse16 (store (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_51) |c_~#value~0.base| .cse14) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse15) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (= |~#inc_flag~0.base| |c_~#value~0.base|) (let ((.cse17 (select (select .cse16 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse14) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse15) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| (store (select .cse16 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse17))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse17)) (not (= (select (select .cse16 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))))))) is different from false [2023-11-23 21:56:11,304 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 5 trivial. 10 not checked. [2023-11-23 21:56:11,304 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:56:11,304 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [554863810] [2023-11-23 21:56:11,304 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [554863810] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:56:11,304 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:56:11,304 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 11] total 21 [2023-11-23 21:56:11,304 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1622762245] [2023-11-23 21:56:11,304 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:56:11,305 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2023-11-23 21:56:11,305 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:56:11,305 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2023-11-23 21:56:11,305 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=299, Unknown=16, NotChecked=114, Total=506 [2023-11-23 21:56:11,306 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:56:11,306 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:56:11,306 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 3.090909090909091) internal successors, (68), 22 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 13 states. [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:56:11,306 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:56:36,869 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse0 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse17 (select .cse0 |c_~#value~0.offset|))) (let ((.cse1 (bvadd .cse17 (_ bv1 32)))) (and (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv0 32) (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (store (store .cse0 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| .cse1) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|)))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_51 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse6 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse3 (store (select .cse6 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) (let ((.cse4 (store (select (store .cse6 |c_~#value~0.base| .cse3) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (let ((.cse2 (store (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_51) |c_~#value~0.base| .cse3) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse4) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (not (= (select (select .cse2 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse5 (select (select .cse2 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse3) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse4) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| (store (select .cse2 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse5 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse5)) (= |~#inc_flag~0.base| |c_~#value~0.base|))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse11 (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse12 (store (select .cse11 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) (let ((.cse7 (store |c_#memory_int| |c_~#value~0.base| .cse12))) (let ((.cse10 (store (store .cse7 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse11 |c_~#value~0.base| .cse12) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (let ((.cse8 (select .cse10 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse9 (select (select .cse10 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (select (store (store .cse7 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store .cse8 |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse9 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse9)) (not (= (select .cse8 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse15 (store (let ((.cse16 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse0 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| .cse1)))) (store .cse16 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse16 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (let ((.cse13 (select .cse15 |c_~#value~0.base|))) (let ((.cse14 (select .cse13 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (store .cse13 |~#inc_flag~0.offset| v_ArrVal_517) |c_~#value~0.offset| (bvadd .cse14 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse14))) (not (= (select (select .cse15 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))) (bvugt .cse17 |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))))) is different from false [2023-11-23 21:56:44,945 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse10 (select |c_#memory_int| |c_~#value~0.base|))) (let ((.cse55 (select .cse10 |c_~#value~0.offset|)) (.cse1 (select |c_#memory_int| (_ bv3 32)))) (let ((.cse0 (select .cse1 |c_~#value~0.offset|)) (.cse4 (= |c_~#inc_flag~0.base| |c_~#value~0.base|)) (.cse9 (= |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |c_~#inc_flag~0.base|)) (.cse11 (bvadd .cse55 (_ bv1 32))) (.cse29 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| .cse55))) (and (= .cse0 |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|) (let ((.cse3 (= .cse0 (_ bv1 32))) (.cse2 (select |c_#memory_int| |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|))) (or (and (exists ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32))) (and (= (select .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv1 32)) (= (select .cse2 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))) .cse3) (and (not (= |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ bv3 32))) .cse3 (exists ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32))) (= (select .cse2 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))) (or (not .cse4) (forall ((v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (let ((.cse6 (select (select .cse5 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store .cse5 |c_~#value~0.base| (store (select (store .cse5 |c_~#inc_flag~0.base| (store (select .cse5 |c_~#inc_flag~0.base|) |c_~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse6 (_ bv1 32)))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse6)) (not (= (select (select .cse5 |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (or (forall ((v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse7 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (not (= (select (select .cse7 |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse8 (select (select .cse7 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store .cse7 |c_~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store .cse7 |c_~#inc_flag~0.base| (store (select .cse7 |c_~#inc_flag~0.base|) |c_~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse8 (_ bv1 32)))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse8))))) .cse9 .cse4) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv0 32) (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (store (store .cse10 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| .cse11) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|)))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_51 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse16 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse13 (store (select .cse16 |c_~#value~0.base|) |c_~#value~0.offset| .cse11))) (let ((.cse14 (store (select (store .cse16 |c_~#value~0.base| .cse13) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (let ((.cse12 (store (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_51) |c_~#value~0.base| .cse13) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse14) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (not (= (select (select .cse12 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse15 (select (select .cse12 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse13) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse14) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| (store (select .cse12 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse15 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse15)) (= |~#inc_flag~0.base| |c_~#value~0.base|))))))) (or (not .cse9) (forall ((v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (let ((.cse18 (select (select .cse17 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store .cse17 |c_~#value~0.base| (store (select (store .cse17 |c_~#inc_flag~0.base| (store (select .cse17 |c_~#inc_flag~0.base|) |c_~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse18 (_ bv1 32)))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse18)) (not (= (select (select .cse17 |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse23 (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse24 (store (select .cse23 |c_~#value~0.base|) |c_~#value~0.offset| .cse11))) (let ((.cse19 (store |c_#memory_int| |c_~#value~0.base| .cse24))) (let ((.cse22 (store (store .cse19 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse23 |c_~#value~0.base| .cse24) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (let ((.cse20 (select .cse22 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|))) (or (let ((.cse21 (select (select .cse22 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (select (store (store .cse19 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store .cse20 |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse21 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse21)) (not (= (select .cse20 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse27 (store (let ((.cse28 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse10 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| .cse11)))) (store .cse28 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse28 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (let ((.cse25 (select .cse27 |c_~#value~0.base|))) (let ((.cse26 (select .cse25 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (store .cse25 |~#inc_flag~0.offset| v_ArrVal_517) |c_~#value~0.offset| (bvadd .cse26 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse26))) (not (= (select (select .cse27 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))))) (or (not .cse29) (let ((.cse30 (bvadd |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (_ bv1 32)))) (and (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store (store |c_#memory_int| |c_~#value~0.base| (store (store (store .cse10 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| .cse30) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32)))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_51 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse35 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse32 (store (select .cse35 |c_~#value~0.base|) |c_~#value~0.offset| .cse30))) (let ((.cse33 (store (select (store .cse35 |c_~#value~0.base| .cse32) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (let ((.cse31 (store (store (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_51) |c_~#value~0.base| .cse32) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse33) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (not (= (select (select .cse31 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (let ((.cse34 (select (select .cse31 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store (store (store (store |c_#memory_int| |c_~#value~0.base| .cse32) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse33) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |~#inc_flag~0.base| (store (select .cse31 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse34 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse34)) (= |~#inc_flag~0.base| |c_~#value~0.base|))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_ArrVal_511 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse40 (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |~#inc_flag~0.offset| v_ArrVal_511)))) (let ((.cse41 (store (select .cse40 |c_~#value~0.base|) |c_~#value~0.offset| .cse30))) (let ((.cse37 (store |c_#memory_int| |c_~#value~0.base| .cse41))) (let ((.cse39 (store (store .cse37 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store .cse40 |c_~#value~0.base| .cse41) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (let ((.cse36 (select .cse39 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|))) (or (not (= (select .cse36 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse38 (select (select .cse39 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (select (store (store .cse37 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store .cse36 |~#inc_flag~0.offset| v_ArrVal_517)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse38 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse38))))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_511 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse42 (store (let ((.cse45 (store |c_#memory_int| |c_~#value~0.base| (store (store .cse10 |~#inc_flag~0.offset| v_ArrVal_511) |c_~#value~0.offset| .cse30)))) (store .cse45 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse45 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (not (= (select (select .cse42 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse43 (select .cse42 |c_~#value~0.base|))) (let ((.cse44 (select .cse43 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (store .cse43 |~#inc_flag~0.offset| v_ArrVal_517) |c_~#value~0.offset| (bvadd .cse44 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse44))))))))) (= (_ bv3 32) |c_~#value~0.base|) (or .cse29 (and (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_517 (_ BitVec 32)) (v_DerPreprocessor_49 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_52 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_ArrVal_515 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse46 (store (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_52) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515))) (or (not (= (select (select .cse46 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (let ((.cse47 (select .cse46 |c_~#value~0.base|))) (let ((.cse48 (select .cse47 |c_~#value~0.offset|))) (bvugt (select (select (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_515) |c_~#value~0.base| (store (store .cse47 |~#inc_flag~0.offset| v_ArrVal_517) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse48))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_49) |c_~#value~0.base|) |c_~#value~0.offset|) .cse48)))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_prenex_84 (_ BitVec 32)) (v_DerPreprocessor_50 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_85 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (v_DerPreprocessor_52 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse52 (store (store |c_#memory_int| |~#inc_flag~0.base| v_DerPreprocessor_52) |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_85))) (let ((.cse50 (select .cse52 |~#inc_flag~0.base|))) (or (let ((.cse51 (select (select .cse52 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse49 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_85))) (store .cse49 |c_~#value~0.base| (store (select (store .cse49 |~#inc_flag~0.base| (store .cse50 |~#inc_flag~0.offset| v_prenex_84)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd (_ bv1 32) .cse51)))) |~#inc_flag~0.base| v_DerPreprocessor_50) |c_~#value~0.base|) |c_~#value~0.offset|) .cse51)) (not (= (select .cse50 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))))))) (forall ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ BitVec 32)) (v_DerPreprocessor_47 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_86 (_ BitVec 32)) (v_DerPreprocessor_48 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_87 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_52 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (let ((.cse53 (store (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_52) |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_87))) (or (= |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| |~#inc_flag~0.base|) (not (= (select (select .cse53 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset|) (_ bv0 32))) (= |~#inc_flag~0.base| |c_~#value~0.base|) (let ((.cse54 (select (select .cse53 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_87) |~#inc_flag~0.base| v_DerPreprocessor_47) |c_~#value~0.base| (store (select (store .cse53 |~#inc_flag~0.base| (store (select .cse53 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_prenex_86)) |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse54 (_ bv1 32)))) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_48) |c_~#value~0.base|) |c_~#value~0.offset|) .cse54))))))))))) is different from true [2023-11-23 21:56:50,042 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0, 1] [2023-11-23 21:57:23,203 WARN L854 $PredicateComparison]: unable to prove that (and (forall ((|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32))) (or (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (let ((.cse1 (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse0 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse0 |c_~#value~0.base| (store (select .cse0 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse1 (_ bv1 32))))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse1))) (not (= (select |c_#valid| |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|) (_ bv0 1))))) (forall ((v_ArrVal_387 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_392 (_ BitVec 32)) (v_ArrVal_386 (_ BitVec 1)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22| (_ BitVec 32))) (or (not (= (select |c_#valid| |v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22|) (_ bv0 1))) (not (= (_ bv0 1) (select (store |c_#valid| |v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22| v_ArrVal_386) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|))) (let ((.cse4 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_387))) (let ((.cse3 (select (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse2 (store .cse4 |~#inc_flag~0.base| (store (select .cse4 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse2 |c_~#value~0.base| (store (select .cse2 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse3 (_ bv1 32))))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse3)))))) is different from false [2023-11-23 21:57:24,251 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse2 (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|))) (let ((.cse1 (bvadd .cse2 (_ bv1 32))) (.cse7 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| .cse2))) (and (forall ((|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32))) (or (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse0 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse0 |c_~#value~0.base| (store (select .cse0 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (not (= (select |c_#valid| |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|) (_ bv0 1))))) (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse3 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse3 |c_~#value~0.base| (store (select .cse3 |c_~#value~0.base|) |c_~#value~0.offset| .cse1))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse2)) (forall ((v_ArrVal_387 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_392 (_ BitVec 32)) (v_ArrVal_386 (_ BitVec 1)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (or (not (= (_ bv0 1) (select (store |c_#valid| |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_ArrVal_386) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|))) (let ((.cse6 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_387))) (let ((.cse5 (select (select .cse6 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse4 (store .cse6 |~#inc_flag~0.base| (store (select .cse6 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse4 |c_~#value~0.base| (store (select .cse4 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse5 (_ bv1 32))))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse5))))) (or .cse7 (forall ((v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (bvugt (select (select (store |c_#memory_int| |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_27) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (or (not .cse7) (forall ((v_ArrVal_392 (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32))) (bvugt (select (select (store (let ((.cse8 (store |c_#memory_int| |~#inc_flag~0.base| (store (select |c_#memory_int| |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse8 |c_~#value~0.base| (store (select .cse8 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (_ bv1 32))))) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1|))) (forall ((v_ArrVal_387 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_392 (_ BitVec 32)) (v_ArrVal_386 (_ BitVec 1)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32))) (|v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| (_ BitVec 32)) (|~#inc_flag~0.base| (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22| (_ BitVec 32))) (or (not (= (select |c_#valid| |v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22|) (_ bv0 1))) (not (= (_ bv0 1) (select (store |c_#valid| |v_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base_22| v_ArrVal_386) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17|))) (let ((.cse11 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_387))) (let ((.cse10 (select (select .cse11 |c_~#value~0.base|) |c_~#value~0.offset|))) (bvugt (select (select (store (let ((.cse9 (store .cse11 |~#inc_flag~0.base| (store (select .cse11 |~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_392)))) (store .cse9 |c_~#value~0.base| (store (select .cse9 |c_~#value~0.base|) |c_~#value~0.offset| (bvadd .cse10 (_ bv1 32))))) |v_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base_17| v_DerPreprocessor_28) |c_~#value~0.base|) |c_~#value~0.offset|) .cse10)))))))) is different from false [2023-11-23 21:57:26,605 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2023-11-23 21:57:37,000 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0, 1] [2023-11-23 21:57:45,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:57:45,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:57:45,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:57:45,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:57:45,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:57:45,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:57:45,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:57:45,007 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:57:45,011 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (26)] Forceful destruction successful, exit code 0 [2023-11-23 21:57:45,207 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:57:45,208 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:57:45,208 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:57:45,208 INFO L85 PathProgramCache]: Analyzing trace with hash 1000648533, now seen corresponding path program 1 times [2023-11-23 21:57:45,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:57:45,208 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1251507336] [2023-11-23 21:57:45,208 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:57:45,208 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:57:45,209 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:57:45,210 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:57:45,218 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (27)] Waiting until timeout for monitored process [2023-11-23 21:57:45,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:57:45,391 INFO L262 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 12 conjunts are in the unsatisfiable core [2023-11-23 21:57:45,393 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:57:48,673 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 25 [2023-11-23 21:57:49,658 INFO L349 Elim1Store]: treesize reduction 61, result has 37.1 percent of original size [2023-11-23 21:57:49,658 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 5 case distinctions, treesize of input 44 treesize of output 86 [2023-11-23 21:57:49,781 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:57:49,998 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:57:50,260 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2023-11-23 21:57:51,773 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2023-11-23 21:57:51,773 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:57:51,773 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:57:51,773 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1251507336] [2023-11-23 21:57:51,773 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1251507336] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:57:51,773 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:57:51,773 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-23 21:57:51,773 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1559784736] [2023-11-23 21:57:51,774 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:57:51,774 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2023-11-23 21:57:51,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:57:51,774 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-11-23 21:57:51,774 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2023-11-23 21:57:51,774 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:57:51,774 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:57:51,775 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 6.0) internal successors, (30), 5 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:57:51,775 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:57:57,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:57:57,563 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:57:57,566 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (27)] Forceful destruction successful, exit code 0 [2023-11-23 21:57:57,763 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:57:57,764 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:57:57,764 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:57:57,764 INFO L85 PathProgramCache]: Analyzing trace with hash 955333108, now seen corresponding path program 2 times [2023-11-23 21:57:57,764 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:57:57,764 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1172688952] [2023-11-23 21:57:57,764 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 21:57:57,764 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:57:57,765 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:57:57,765 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:57:57,766 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (28)] Waiting until timeout for monitored process [2023-11-23 21:57:57,966 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 21:57:57,966 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:57:57,970 INFO L262 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 18 conjunts are in the unsatisfiable core [2023-11-23 21:57:57,972 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:58:02,297 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 21 [2023-11-23 21:58:02,594 INFO L349 Elim1Store]: treesize reduction 13, result has 40.9 percent of original size [2023-11-23 21:58:02,594 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 21 treesize of output 15 [2023-11-23 21:58:02,774 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 16 [2023-11-23 21:58:02,839 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:58:04,407 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 26 [2023-11-23 21:58:04,444 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:58:04,567 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:58:04,568 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2023-11-23 21:58:04,860 INFO L349 Elim1Store]: treesize reduction 29, result has 3.3 percent of original size [2023-11-23 21:58:04,860 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 5 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 46 treesize of output 56 [2023-11-23 21:58:04,926 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:58:05,440 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 23 [2023-11-23 21:58:05,565 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:58:10,189 INFO L349 Elim1Store]: treesize reduction 29, result has 49.1 percent of original size [2023-11-23 21:58:10,190 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 5 select indices, 5 select index equivalence classes, 3 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 7 case distinctions, treesize of input 108 treesize of output 115 [2023-11-23 21:58:10,478 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2023-11-23 21:58:10,478 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:58:10,478 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:58:10,478 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1172688952] [2023-11-23 21:58:10,478 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1172688952] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:58:10,478 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:58:10,478 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2023-11-23 21:58:10,478 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [890189187] [2023-11-23 21:58:10,478 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:58:10,479 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2023-11-23 21:58:10,479 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:58:10,479 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2023-11-23 21:58:10,479 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=77, Unknown=1, NotChecked=0, Total=110 [2023-11-23 21:58:10,480 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:58:10,480 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:58:10,480 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:58:10,480 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:58:18,339 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.02s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 21:58:20,728 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 21:58:22,816 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 21:58:27,784 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 21:58:33,389 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 21:58:47,682 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 21:58:49,670 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.56s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 21:58:49,708 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:58:49,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:58:49,711 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2023-11-23 21:58:49,720 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (28)] Forceful destruction successful, exit code 0 [2023-11-23 21:58:49,911 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:58:49,912 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:58:49,912 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:58:49,912 INFO L85 PathProgramCache]: Analyzing trace with hash 1533436250, now seen corresponding path program 1 times [2023-11-23 21:58:49,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:58:49,913 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1812052575] [2023-11-23 21:58:49,913 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:58:49,913 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:58:49,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:58:49,914 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:58:49,914 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (29)] Waiting until timeout for monitored process [2023-11-23 21:58:50,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:58:50,102 INFO L262 TraceCheckSpWp]: Trace formula consists of 163 conjuncts, 19 conjunts are in the unsatisfiable core [2023-11-23 21:58:50,105 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:58:54,460 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 25 [2023-11-23 21:58:55,440 INFO L349 Elim1Store]: treesize reduction 65, result has 33.0 percent of original size [2023-11-23 21:58:55,441 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 5 case distinctions, treesize of input 44 treesize of output 82 [2023-11-23 21:58:55,562 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:58:55,787 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:58:55,788 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:58:56,289 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 23 [2023-11-23 21:58:59,236 INFO L349 Elim1Store]: treesize reduction 36, result has 36.8 percent of original size [2023-11-23 21:58:59,236 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 90 treesize of output 97 [2023-11-23 21:58:59,549 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:58:59,843 INFO L224 Elim1Store]: Index analysis took 184 ms [2023-11-23 21:59:00,695 INFO L349 Elim1Store]: treesize reduction 126, result has 12.5 percent of original size [2023-11-23 21:59:00,695 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 5 new quantified variables, introduced 6 case distinctions, treesize of input 110 treesize of output 132 [2023-11-23 21:59:00,732 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:59:01,005 INFO L224 Elim1Store]: Index analysis took 255 ms [2023-11-23 21:59:02,721 INFO L349 Elim1Store]: treesize reduction 72, result has 41.0 percent of original size [2023-11-23 21:59:02,721 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 5 select indices, 5 select index equivalence classes, 5 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 7 case distinctions, treesize of input 123 treesize of output 136 [2023-11-23 21:59:03,525 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:59:03,767 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:59:03,943 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 32 [2023-11-23 21:59:05,638 INFO L349 Elim1Store]: treesize reduction 39, result has 42.6 percent of original size [2023-11-23 21:59:05,638 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 95 treesize of output 108 [2023-11-23 21:59:05,740 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2023-11-23 21:59:06,217 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:59:06,218 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 1 [2023-11-23 21:59:06,283 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 31 [2023-11-23 21:59:06,349 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2023-11-23 21:59:06,709 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:59:06,710 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:59:09,486 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 16 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2023-11-23 21:59:09,486 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 21:59:09,486 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:59:09,486 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1812052575] [2023-11-23 21:59:09,486 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1812052575] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:59:09,486 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:59:09,486 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2023-11-23 21:59:09,486 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1693551583] [2023-11-23 21:59:09,486 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:59:09,486 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2023-11-23 21:59:09,487 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:59:09,487 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2023-11-23 21:59:09,487 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2023-11-23 21:59:09,487 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:09,487 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:59:09,487 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:59:09,487 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:09,487 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:09,487 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:59:09,487 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:09,487 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:59:09,487 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:09,487 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:59:09,488 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:59:09,488 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:59:09,488 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 14 states. [2023-11-23 21:59:09,488 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:25,878 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2023-11-23 21:59:25,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2023-11-23 21:59:25,884 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (29)] Forceful destruction successful, exit code 0 [2023-11-23 21:59:26,080 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:59:26,080 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:59:26,080 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:59:26,081 INFO L85 PathProgramCache]: Analyzing trace with hash 409769401, now seen corresponding path program 1 times [2023-11-23 21:59:26,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:59:26,081 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [127395606] [2023-11-23 21:59:26,081 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:59:26,081 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:59:26,081 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:59:26,082 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:59:26,083 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (30)] Waiting until timeout for monitored process [2023-11-23 21:59:26,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:59:26,267 INFO L262 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 15 conjunts are in the unsatisfiable core [2023-11-23 21:59:26,269 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:59:26,473 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:59:26,474 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:59:30,810 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 25 [2023-11-23 21:59:31,854 INFO L349 Elim1Store]: treesize reduction 61, result has 37.1 percent of original size [2023-11-23 21:59:31,855 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 5 case distinctions, treesize of input 44 treesize of output 86 [2023-11-23 21:59:31,994 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:59:32,237 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:59:32,238 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 21:59:32,340 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2023-11-23 21:59:33,470 INFO L349 Elim1Store]: treesize reduction 12, result has 60.0 percent of original size [2023-11-23 21:59:33,470 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 38 treesize of output 34 [2023-11-23 21:59:35,396 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:59:35,711 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 8 proven. 1 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2023-11-23 21:59:35,711 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:59:36,721 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse1 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread2of3ForFork0_dec_~dec__v~0#1|))) (and (or (forall ((v_ArrVal_692 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_690 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (store (let ((.cse0 (store (store |c_#memory_int| |c_~#dec_flag~0.base| (store (select |c_#memory_int| |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32))) |c_~#value~0.base| v_ArrVal_690))) (store .cse0 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (store (select .cse0 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_692) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) (not .cse1)) (or (forall ((v_ArrVal_692 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_62 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv0 32) (select (select (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_62) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_692) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|)))) .cse1))) is different from false [2023-11-23 21:59:36,947 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 21:59:36,947 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 34 [2023-11-23 21:59:37,086 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 21:59:37,087 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 551 treesize of output 541 [2023-11-23 21:59:37,127 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 234 treesize of output 226 [2023-11-23 21:59:37,180 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 226 treesize of output 210 [2023-11-23 21:59:37,743 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 4 [2023-11-23 21:59:39,427 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 3 times theorem prover too weak. 9 trivial. 0 not checked. [2023-11-23 21:59:39,427 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 21:59:39,427 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [127395606] [2023-11-23 21:59:39,428 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [127395606] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:59:39,428 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:59:39,428 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 4] total 9 [2023-11-23 21:59:39,428 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1824884231] [2023-11-23 21:59:39,428 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:59:39,428 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2023-11-23 21:59:39,428 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 21:59:39,429 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2023-11-23 21:59:39,429 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=59, Unknown=4, NotChecked=16, Total=110 [2023-11-23 21:59:39,429 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:39,429 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 21:59:39,429 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 6.6) internal successors, (66), 10 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 21:59:39,429 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:39,429 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:39,429 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 15 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2023-11-23 21:59:39,430 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:46,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2023-11-23 21:59:46,010 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2023-11-23 21:59:46,012 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 21:59:46,016 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (30)] Forceful destruction successful, exit code 0 [2023-11-23 21:59:46,213 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 30 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:59:46,213 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 21:59:46,213 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:59:46,213 INFO L85 PathProgramCache]: Analyzing trace with hash -19065505, now seen corresponding path program 1 times [2023-11-23 21:59:46,214 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 21:59:46,214 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [387989696] [2023-11-23 21:59:46,214 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:59:46,214 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 21:59:46,214 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 21:59:46,215 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 21:59:46,215 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (31)] Waiting until timeout for monitored process [2023-11-23 21:59:46,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:59:46,406 INFO L262 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 22 conjunts are in the unsatisfiable core [2023-11-23 21:59:46,408 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:59:46,625 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 21:59:46,625 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 21:59:52,701 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 25 [2023-11-23 21:59:53,792 INFO L349 Elim1Store]: treesize reduction 61, result has 37.1 percent of original size [2023-11-23 21:59:53,792 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 5 case distinctions, treesize of input 44 treesize of output 86 [2023-11-23 21:59:53,947 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:59:54,159 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:59:54,446 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2023-11-23 21:59:54,677 WARN L214 Elim1Store]: Array PQE input equivalent to false [2023-11-23 21:59:57,050 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2023-11-23 21:59:58,546 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 35 [2023-11-23 21:59:59,498 INFO L349 Elim1Store]: treesize reduction 65, result has 33.0 percent of original size [2023-11-23 21:59:59,498 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 5 case distinctions, treesize of input 44 treesize of output 82 [2023-11-23 21:59:59,634 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 21:59:59,851 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 21:59:59,852 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 22:00:00,061 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 12 [2023-11-23 22:00:01,578 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 9 proven. 9 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2023-11-23 22:00:01,578 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:00:02,199 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse0 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|)))) (and (or (not .cse0) (forall ((v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse1 (store (store |c_#memory_int| |c_~#inc_flag~0.base| (store (select |c_#memory_int| |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746)) |c_~#value~0.base| v_ArrVal_741))) (store .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))) (or .cse0 (forall ((v_DerPreprocessor_66 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_66) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|))))))) is different from false [2023-11-23 22:00:02,432 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse0 (store (store |c_#memory_int| |c_~#inc_flag~0.base| (store (select |c_#memory_int| |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746)) |c_~#value~0.base| v_ArrVal_741))) (store .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) is different from false [2023-11-23 22:00:02,569 WARN L854 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_740 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse0 (store (let ((.cse1 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740))) (store .cse1 |c_~#inc_flag~0.base| (store (select .cse1 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746))) |c_~#value~0.base| v_ArrVal_741))) (store .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) is different from false [2023-11-23 22:00:03,457 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse2 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread2of3ForFork0_dec_~dec__v~0#1|))) (and (or (forall ((v_DerPreprocessor_67 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_740 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse0 (store (let ((.cse1 (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_67) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740))) (store .cse1 |c_~#inc_flag~0.base| (store (select .cse1 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746))) |c_~#value~0.base| v_ArrVal_741))) (store .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) .cse2) (or (not .cse2) (forall ((v_ArrVal_740 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (v_ArrVal_737 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse3 (store (let ((.cse4 (store |c_#memory_int| |c_~#dec_flag~0.base| (store (select |c_#memory_int| |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32))))) (let ((.cse6 (store .cse4 |c_~#value~0.base| v_ArrVal_737))) (let ((.cse5 (store (select .cse6 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) (store (store (store .cse4 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse5) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740) |c_~#inc_flag~0.base| (store (select (store (store .cse6 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse5) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740) |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746))))) |c_~#value~0.base| v_ArrVal_741))) (store .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))))) is different from false [2023-11-23 22:00:03,797 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:00:03,797 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 164 treesize of output 109 [2023-11-23 22:01:19,124 WARN L293 SmtUtils]: Spent 1.25m on a formula simplification. DAG size of input: 64 DAG size of output: 43 (called from [L 346] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1) [2023-11-23 22:01:19,124 INFO L349 Elim1Store]: treesize reduction 63, result has 51.5 percent of original size [2023-11-23 22:01:19,129 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 5 new quantified variables, introduced 11 case distinctions, treesize of input 14655455 treesize of output 14278399 [2023-11-23 22:01:24,150 INFO L224 Elim1Store]: Index analysis took 186 ms [2023-11-23 22:01:25,117 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:01:25,119 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 282789 treesize of output 281253 [2023-11-23 22:01:30,192 WARN L293 SmtUtils]: Spent 5.07s on a formula simplification. DAG size of input: 2064 DAG size of output: 969 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2023-11-23 22:01:31,379 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 90842 treesize of output 88754 [2023-11-23 22:01:36,394 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 81842 treesize of output 78738 [2023-11-23 22:01:37,977 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 92446 treesize of output 91170 [2023-11-23 22:02:24,962 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 4 [2023-11-23 22:02:28,836 WARN L214 Elim1Store]: Array PQE input equivalent to true [2023-11-23 22:02:28,839 WARN L214 Elim1Store]: Array PQE input equivalent to true [2023-11-23 22:02:28,842 WARN L214 Elim1Store]: Array PQE input equivalent to true [2023-11-23 22:02:28,886 WARN L214 Elim1Store]: Array PQE input equivalent to true [2023-11-23 22:02:28,889 WARN L214 Elim1Store]: Array PQE input equivalent to true [2023-11-23 22:02:28,892 WARN L214 Elim1Store]: Array PQE input equivalent to true [2023-11-23 22:02:28,937 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 562 treesize of output 532 [2023-11-23 22:02:31,701 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 9 trivial. 11 not checked. [2023-11-23 22:02:31,701 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 22:02:31,701 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [387989696] [2023-11-23 22:02:31,701 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [387989696] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 22:02:31,701 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 22:02:31,701 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6] total 14 [2023-11-23 22:02:31,702 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1993443447] [2023-11-23 22:02:31,702 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 22:02:31,702 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2023-11-23 22:02:31,702 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 22:02:31,702 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2023-11-23 22:02:31,702 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=94, Unknown=4, NotChecked=92, Total=240 [2023-11-23 22:02:31,702 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:02:31,703 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 22:02:31,703 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 5.266666666666667) internal successors, (79), 15 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 15 states. [2023-11-23 22:02:31,703 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2023-11-23 22:02:31,704 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:31,704 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:02:33,335 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse2 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread2of3ForFork0_dec_~dec__v~0#1|))) (and (= |c_~#inc_flag~0.base| (_ bv4 32)) (or (forall ((v_DerPreprocessor_67 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_740 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse0 (store (let ((.cse1 (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_67) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740))) (store .cse1 |c_~#inc_flag~0.base| (store (select .cse1 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746))) |c_~#value~0.base| v_ArrVal_741))) (store .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) .cse2) (= |c_~#dec_flag~0.offset| (_ bv0 32)) (= |c_~#dec_flag~0.base| (_ bv5 32)) (= (_ bv3 32) |c_~#value~0.base|) (= (_ bv0 32) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (or (not .cse2) (forall ((v_ArrVal_740 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (v_ArrVal_737 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse3 (store (let ((.cse4 (store |c_#memory_int| |c_~#dec_flag~0.base| (store (select |c_#memory_int| |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32))))) (let ((.cse6 (store .cse4 |c_~#value~0.base| v_ArrVal_737))) (let ((.cse5 (store (select .cse6 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) (store (store (store .cse4 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse5) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740) |c_~#inc_flag~0.base| (store (select (store (store .cse6 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse5) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740) |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746))))) |c_~#value~0.base| v_ArrVal_741))) (store .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))) (not (= (_ bv5 32) |c_ULTIMATE.start_main_~#t~0#1.base|)))) is different from false [2023-11-23 22:02:45,259 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:02:45,259 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2023-11-23 22:02:45,260 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2023-11-23 22:02:45,261 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:45,263 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2023-11-23 22:02:45,268 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (31)] Ended with exit code 0 [2023-11-23 22:02:45,467 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 22:02:45,468 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 22:02:45,468 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:02:45,468 INFO L85 PathProgramCache]: Analyzing trace with hash 1616027761, now seen corresponding path program 2 times [2023-11-23 22:02:45,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 22:02:45,468 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2043789094] [2023-11-23 22:02:45,468 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 22:02:45,468 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 22:02:45,469 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 22:02:45,469 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 22:02:45,470 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (32)] Waiting until timeout for monitored process [2023-11-23 22:02:45,649 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 22:02:45,650 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 22:02:45,653 INFO L262 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 20 conjunts are in the unsatisfiable core [2023-11-23 22:02:45,655 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:02:47,976 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:02:47,977 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 15 treesize of output 15 [2023-11-23 22:02:49,386 INFO L224 Elim1Store]: Index analysis took 126 ms [2023-11-23 22:02:49,688 INFO L349 Elim1Store]: treesize reduction 58, result has 13.4 percent of original size [2023-11-23 22:02:49,688 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 3 case distinctions, treesize of input 87 treesize of output 20 [2023-11-23 22:02:50,039 INFO L349 Elim1Store]: treesize reduction 25, result has 3.8 percent of original size [2023-11-23 22:02:50,039 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 39 treesize of output 1 [2023-11-23 22:02:50,291 INFO L349 Elim1Store]: treesize reduction 25, result has 3.8 percent of original size [2023-11-23 22:02:50,291 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 39 treesize of output 1 [2023-11-23 22:02:50,686 INFO L349 Elim1Store]: treesize reduction 13, result has 45.8 percent of original size [2023-11-23 22:02:50,686 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 20 treesize of output 23 [2023-11-23 22:02:53,220 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 12 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2023-11-23 22:02:53,220 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:02:55,904 INFO L349 Elim1Store]: treesize reduction 69, result has 53.7 percent of original size [2023-11-23 22:02:55,905 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 6 case distinctions, treesize of input 90 treesize of output 117 [2023-11-23 22:02:56,905 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:02:56,905 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 238 treesize of output 237 [2023-11-23 22:02:56,977 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 4 [2023-11-23 22:02:57,166 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:02:57,167 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 17 treesize of output 21 [2023-11-23 22:02:57,294 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 4 [2023-11-23 22:02:59,824 INFO L349 Elim1Store]: treesize reduction 3, result has 25.0 percent of original size [2023-11-23 22:02:59,824 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 25 treesize of output 1 [2023-11-23 22:02:59,825 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2023-11-23 22:02:59,825 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 22:02:59,825 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2043789094] [2023-11-23 22:02:59,825 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2043789094] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 22:02:59,825 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 22:02:59,825 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 17 [2023-11-23 22:02:59,825 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1473491402] [2023-11-23 22:02:59,825 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 22:02:59,825 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2023-11-23 22:02:59,826 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 22:02:59,826 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2023-11-23 22:02:59,826 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=241, Unknown=0, NotChecked=0, Total=306 [2023-11-23 22:02:59,826 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:02:59,826 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 22:02:59,827 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:02:59,827 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 22:02:59,828 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:59,828 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 15 states. [2023-11-23 22:02:59,828 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2023-11-23 22:02:59,828 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:02:59,828 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 12 states. [2023-11-23 22:02:59,828 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:03:13,893 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:03:26,425 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:03:33,310 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse4 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread2of3ForFork0_dec_~dec__v~0#1|))) (and (let ((.cse1 (select |c_#memory_int| (_ bv5 32)))) (let ((.cse0 (= (select .cse1 (_ bv0 32)) (_ bv1 32)))) (or (and .cse0 (or (exists ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (= (store .cse1 (_ bv0 32) (_ bv1 32)) (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|))) (exists ((|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (= (select (select |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) (_ bv0 32)) (_ bv1 32))))) (and .cse0 (= (select (select |c_#memory_int| (_ bv3 32)) (_ bv0 32)) (_ bv1 32)))))) (= |c_~#inc_flag~0.base| (_ bv4 32)) (or (forall ((v_DerPreprocessor_67 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_740 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse2 (store (let ((.cse3 (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_67) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740))) (store .cse3 |c_~#inc_flag~0.base| (store (select .cse3 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746))) |c_~#value~0.base| v_ArrVal_741))) (store .cse2 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse2 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) .cse4) (= |c_~#dec_flag~0.offset| (_ bv0 32)) (= |c_~#dec_flag~0.base| (_ bv5 32)) (= (_ bv3 32) |c_~#value~0.base|) (= (_ bv0 32) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (or (not .cse4) (forall ((v_ArrVal_740 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_741 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_746 (_ BitVec 32)) (v_ArrVal_737 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse5 (store (let ((.cse6 (store |c_#memory_int| |c_~#dec_flag~0.base| (store (select |c_#memory_int| |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32))))) (let ((.cse8 (store .cse6 |c_~#value~0.base| v_ArrVal_737))) (let ((.cse7 (store (select .cse8 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) (store (store (store .cse6 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse7) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740) |c_~#inc_flag~0.base| (store (select (store (store .cse8 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse7) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_740) |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_746))))) |c_~#value~0.base| v_ArrVal_741))) (store .cse5 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse5 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))) (not (= (_ bv5 32) |c_ULTIMATE.start_main_~#t~0#1.base|)))) is different from false [2023-11-23 22:03:36,253 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:03:41,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 22:03:41,883 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:03:41,883 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:03:41,885 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2023-11-23 22:03:41,885 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:03:41,885 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2023-11-23 22:03:41,885 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:03:41,889 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (32)] Forceful destruction successful, exit code 0 [2023-11-23 22:03:42,088 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 32 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 22:03:42,088 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 22:03:42,089 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:03:42,089 INFO L85 PathProgramCache]: Analyzing trace with hash -1581327695, now seen corresponding path program 1 times [2023-11-23 22:03:42,089 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 22:03:42,089 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1774371694] [2023-11-23 22:03:42,089 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:03:42,089 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 22:03:42,089 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 22:03:42,090 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 22:03:42,091 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (33)] Waiting until timeout for monitored process [2023-11-23 22:03:42,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:03:42,269 INFO L262 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 5 conjunts are in the unsatisfiable core [2023-11-23 22:03:42,271 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:03:42,436 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 22:03:42,453 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 8 [2023-11-23 22:03:42,486 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 22:03:42,552 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 37 [2023-11-23 22:03:42,576 WARN L214 Elim1Store]: Array PQE input equivalent to false [2023-11-23 22:03:42,647 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 42 [2023-11-23 22:03:42,669 WARN L214 Elim1Store]: Array PQE input equivalent to false [2023-11-23 22:03:42,701 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 12 [2023-11-23 22:03:42,734 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 8 [2023-11-23 22:03:42,781 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 22:03:42,781 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2023-11-23 22:03:43,044 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2023-11-23 22:03:43,044 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-11-23 22:03:43,044 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 22:03:43,045 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1774371694] [2023-11-23 22:03:43,045 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1774371694] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 22:03:43,045 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 22:03:43,045 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-11-23 22:03:43,045 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [497723221] [2023-11-23 22:03:43,045 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 22:03:43,045 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2023-11-23 22:03:43,045 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 22:03:43,046 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-23 22:03:43,046 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-11-23 22:03:43,046 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:03:43,046 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 22:03:43,046 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 22:03:43,046 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:03:43,046 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:03:43,046 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 11 states. [2023-11-23 22:03:43,047 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:03:43,048 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 18 states. [2023-11-23 22:03:43,048 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:03:43,048 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:03:53,164 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:03:56,447 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:03:56,447 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2023-11-23 22:03:56,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:03:56,450 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:03:56,453 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (33)] Forceful destruction successful, exit code 0 [2023-11-23 22:03:56,650 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 33 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 22:03:56,650 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting thr1Err0ASSERT_VIOLATIONERROR_FUNCTION === [thr1Err1ASSERT_VIOLATIONERROR_FUNCTION, thr1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-11-23 22:03:56,651 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:03:56,651 INFO L85 PathProgramCache]: Analyzing trace with hash -1251206261, now seen corresponding path program 1 times [2023-11-23 22:03:56,651 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-11-23 22:03:56,651 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1584564419] [2023-11-23 22:03:56,651 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:03:56,651 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-11-23 22:03:56,652 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2023-11-23 22:03:56,653 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-11-23 22:03:56,654 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (34)] Waiting until timeout for monitored process [2023-11-23 22:03:56,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:03:56,860 INFO L262 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 26 conjunts are in the unsatisfiable core [2023-11-23 22:03:56,863 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:03:57,043 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2023-11-23 22:03:57,043 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 13 [2023-11-23 22:04:02,202 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 25 [2023-11-23 22:04:03,266 INFO L349 Elim1Store]: treesize reduction 61, result has 37.1 percent of original size [2023-11-23 22:04:03,266 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 5 case distinctions, treesize of input 44 treesize of output 86 [2023-11-23 22:04:03,375 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 22:04:03,529 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 22:04:04,062 INFO L349 Elim1Store]: treesize reduction 23, result has 4.2 percent of original size [2023-11-23 22:04:04,062 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 14 treesize of output 1 [2023-11-23 22:04:04,441 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 23 [2023-11-23 22:04:04,476 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 22:04:06,951 INFO L349 Elim1Store]: treesize reduction 32, result has 45.8 percent of original size [2023-11-23 22:04:06,951 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 65 treesize of output 76 [2023-11-23 22:04:07,680 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 22:04:07,805 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2023-11-23 22:04:12,104 INFO L349 Elim1Store]: treesize reduction 17, result has 46.9 percent of original size [2023-11-23 22:04:12,105 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 48 treesize of output 53 [2023-11-23 22:04:13,705 INFO L349 Elim1Store]: treesize reduction 129, result has 28.7 percent of original size [2023-11-23 22:04:13,705 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 5 new quantified variables, introduced 8 case distinctions, treesize of input 59 treesize of output 115 [2023-11-23 22:04:13,989 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 22:04:14,267 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 22:04:15,154 INFO L349 Elim1Store]: treesize reduction 13, result has 45.8 percent of original size [2023-11-23 22:04:15,154 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 18 treesize of output 26 [2023-11-23 22:04:15,598 INFO L349 Elim1Store]: treesize reduction 13, result has 45.8 percent of original size [2023-11-23 22:04:15,599 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 14 treesize of output 22 [2023-11-23 22:04:17,207 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 16 [2023-11-23 22:04:17,580 INFO L349 Elim1Store]: treesize reduction 25, result has 16.7 percent of original size [2023-11-23 22:04:17,580 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 34 treesize of output 30 [2023-11-23 22:04:25,390 INFO L349 Elim1Store]: treesize reduction 291, result has 13.4 percent of original size [2023-11-23 22:04:25,391 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 7 select indices, 7 select index equivalence classes, 2 disjoint index pairs (out of 21 index pairs), introduced 9 new quantified variables, introduced 28 case distinctions, treesize of input 294 treesize of output 312 [2023-11-23 22:04:33,356 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 22:04:34,391 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2023-11-23 22:04:36,483 INFO L190 IndexEqualityManager]: detected not equals via solver [2023-11-23 22:05:18,120 WARN L293 SmtUtils]: Spent 41.56s on a formula simplification. DAG size of input: 2616 DAG size of output: 134 (called from [L 346] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1) [2023-11-23 22:05:18,120 INFO L349 Elim1Store]: treesize reduction 5313, result has 3.0 percent of original size [2023-11-23 22:05:18,121 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 35 select indices, 35 select index equivalence classes, 1 disjoint index pairs (out of 595 index pairs), introduced 36 new quantified variables, introduced 627 case distinctions, treesize of input 1135 treesize of output 1147 [2023-11-23 22:06:14,495 WARN L293 SmtUtils]: Spent 56.24s on a formula simplification. DAG size of input: 2922 DAG size of output: 301 (called from [L 346] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1) [2023-11-23 22:06:14,495 INFO L349 Elim1Store]: treesize reduction 6194, result has 8.3 percent of original size [2023-11-23 22:06:14,496 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 35 select indices, 35 select index equivalence classes, 2 disjoint index pairs (out of 595 index pairs), introduced 37 new quantified variables, introduced 662 case distinctions, treesize of input 769 treesize of output 1268 [2023-11-23 22:06:14,642 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 647 treesize of output 645 [2023-11-23 22:06:15,195 INFO L349 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2023-11-23 22:06:15,196 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 645 treesize of output 655 [2023-11-23 22:06:15,325 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 657 treesize of output 617 [2023-11-23 22:06:15,590 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:06:15,591 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 602 treesize of output 607 [2023-11-23 22:06:16,104 INFO L349 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2023-11-23 22:06:16,104 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 598 treesize of output 608 [2023-11-23 22:06:16,374 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:06:16,374 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 593 treesize of output 598 [2023-11-23 22:06:16,499 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 589 treesize of output 587 [2023-11-23 22:06:16,651 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 587 treesize of output 585 [2023-11-23 22:06:16,795 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 585 treesize of output 583 [2023-11-23 22:06:20,448 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 11 [2023-11-23 22:06:21,148 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 5 proven. 11 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2023-11-23 22:06:21,148 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:06:21,696 WARN L854 $PredicateComparison]: unable to prove that (and (or (= |c_~#value~0.base| |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) (forall ((v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store (store (store |c_#memory_int| |c_~#dec_flag~0.base| (store (select |c_#memory_int| |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32))) |c_~#value~0.base| v_DerPreprocessor_85) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))) (forall ((v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store |c_#memory_int| |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))) is different from false [2023-11-23 22:06:22,522 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse3 (= |c_~#value~0.base| |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|)) (.cse0 (= |c_thr1Thread3of3ForFork0_inc_~inc__v~0#1| (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|)))) (and (or (not .cse0) (let ((.cse2 (select |c_#memory_int| |c_~#inc_flag~0.base|))) (and (forall ((v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (store (let ((.cse1 (store (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse2 |~#inc_flag~0.offset| v_ArrVal_898)) |c_~#value~0.base| v_ArrVal_901))) (store .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse1 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) (or .cse3 (forall ((v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store (store (let ((.cse4 (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse2 |~#inc_flag~0.offset| v_ArrVal_898)))) (let ((.cse6 (store .cse4 |c_~#value~0.base| v_ArrVal_901))) (let ((.cse5 (store (select .cse6 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (store (store .cse4 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse5) |c_~#dec_flag~0.base| (store (select (store .cse6 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse5) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))))) |c_~#value~0.base| v_DerPreprocessor_85) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))))))) (or (and (or (forall ((v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_87 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store (store (let ((.cse7 (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_87))) (store .cse7 |c_~#dec_flag~0.base| (store (select .cse7 |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))) |c_~#value~0.base| v_DerPreprocessor_85) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) .cse3) (forall ((v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_87 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (store (store |c_#memory_int| |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| v_DerPreprocessor_87) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))) .cse0))) is different from false [2023-11-23 22:06:23,301 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse1 (select |c_#memory_int| |c_~#inc_flag~0.base|))) (and (forall ((v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (store (let ((.cse0 (store (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse1 |~#inc_flag~0.offset| v_ArrVal_898)) |c_~#value~0.base| v_ArrVal_901))) (store .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) (or (= |c_~#value~0.base| |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) (forall ((v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store (store (let ((.cse2 (store |c_#memory_int| |c_~#inc_flag~0.base| (store .cse1 |~#inc_flag~0.offset| v_ArrVal_898)))) (let ((.cse4 (store .cse2 |c_~#value~0.base| v_ArrVal_901))) (let ((.cse3 (store (select .cse4 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (store (store .cse2 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse3) |c_~#dec_flag~0.base| (store (select (store .cse4 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse3) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))))) |c_~#value~0.base| v_DerPreprocessor_85) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))))) is different from false [2023-11-23 22:06:24,907 WARN L854 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse1 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (forall ((v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (store (let ((.cse0 (store (store .cse1 |c_~#inc_flag~0.base| (store (select .cse1 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898)) |c_~#value~0.base| v_ArrVal_901))) (store .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select .cse0 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))) (not (= (select (select .cse1 |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32)))))) (or (= |c_~#value~0.base| |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) (forall ((v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (not (= (_ bv0 32) (select (select (store (store (let ((.cse2 (store .cse5 |c_~#inc_flag~0.base| (store (select .cse5 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898)))) (let ((.cse4 (store .cse2 |c_~#value~0.base| v_ArrVal_901))) (let ((.cse3 (store (select .cse4 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (store (store .cse2 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse3) |c_~#dec_flag~0.base| (store (select (store .cse4 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse3) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))))) |c_~#value~0.base| v_DerPreprocessor_85) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|))) (not (= (select (select .cse5 |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |c_thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32)))))))) is different from false [2023-11-23 22:06:25,984 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse6 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread2of3ForFork0_dec_~dec__v~0#1|))) (and (or (and (forall ((v_DerPreprocessor_88 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_88) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (not (= (select (select .cse0 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32))) (= |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| |c_~#value~0.base|) (not (= (select (select (store (store (let ((.cse1 (store (select .cse0 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898))) (let ((.cse3 (store (store .cse0 |c_~#inc_flag~0.base| .cse1) |c_~#value~0.base| v_ArrVal_901))) (let ((.cse2 (store (select .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse1) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse2) |c_~#dec_flag~0.base| (store (select (store .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse2) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))))) |c_~#value~0.base| v_DerPreprocessor_85) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))))) (forall ((v_DerPreprocessor_88 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_452 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (v_prenex_454 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_455 (_ BitVec 32)) (v_prenex_456 (_ BitVec 32)) (v_prenex_453 (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_88) |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_452))) (or (not (= (select (select (store (let ((.cse4 (store (select .cse5 |c_~#inc_flag~0.base|) v_prenex_455 v_prenex_453))) (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_452) |c_~#inc_flag~0.base| .cse4) |c_~#value~0.base| v_prenex_454) v_prenex_456 (store (select (store (store .cse5 |c_~#inc_flag~0.base| .cse4) |c_~#value~0.base| v_prenex_454) v_prenex_456) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))) (not (= (select (select .cse5 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32))))))) .cse6) (or (let ((.cse8 (store |c_#memory_int| |c_~#dec_flag~0.base| (store (select |c_#memory_int| |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32))))) (and (forall ((v_ArrVal_895 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32))) (let ((.cse11 (store .cse8 |c_~#value~0.base| v_ArrVal_895))) (let ((.cse10 (store (select .cse11 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) (let ((.cse7 (store (store .cse11 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse10) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (not (= (select (select .cse7 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32))) (forall ((v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (store (let ((.cse9 (store (select .cse7 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898))) (store (store (store (store .cse8 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse9) |c_~#value~0.base| v_ArrVal_901) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store (store (store (store .cse8 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse10) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse9) |c_~#value~0.base| v_ArrVal_901) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))))))) (forall ((v_ArrVal_895 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32))) (or (= |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| |c_~#value~0.base|) (forall ((v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (store .cse8 |c_~#value~0.base| v_ArrVal_895))) (let ((.cse15 (store (select .cse17 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) (let ((.cse16 (store (store .cse17 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse15) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (not (= (select (select (store (store (let ((.cse12 (store (select .cse16 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898))) (let ((.cse14 (store (store (store (store .cse8 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse15) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse12) |c_~#value~0.base| v_ArrVal_901))) (let ((.cse13 (store (select .cse14 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse12) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse13) |c_~#dec_flag~0.base| (store (select (store .cse14 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse13) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))))) |c_~#value~0.base| v_DerPreprocessor_85) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))) (not (= (select (select .cse16 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32)))))))))))) (not .cse6)))) is different from false [2023-11-23 22:06:26,605 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:06:26,605 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 136 treesize of output 128 [2023-11-23 22:06:26,624 INFO L173 IndexEqualityManager]: detected equality via solver [2023-11-23 22:06:26,642 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 15 [2023-11-23 22:06:26,661 WARN L214 Elim1Store]: Array PQE input equivalent to true [2023-11-23 22:06:26,695 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 4 [2023-11-23 22:06:26,811 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 4 [2023-11-23 22:06:26,926 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:06:26,927 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 190 treesize of output 126 [2023-11-23 22:06:32,749 WARN L293 SmtUtils]: Spent 5.70s on a formula simplification. DAG size of input: 64 DAG size of output: 44 (called from [L 346] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1) [2023-11-23 22:06:32,750 INFO L349 Elim1Store]: treesize reduction 63, result has 51.5 percent of original size [2023-11-23 22:06:32,751 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 5 new quantified variables, introduced 11 case distinctions, treesize of input 4941085 treesize of output 4612189 [2023-11-23 22:06:33,868 INFO L224 Elim1Store]: Index analysis took 203 ms [2023-11-23 22:06:35,528 INFO L349 Elim1Store]: treesize reduction 8, result has 83.7 percent of original size [2023-11-23 22:06:35,529 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 28409 treesize of output 28201 [2023-11-23 22:06:36,862 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-11-23 22:06:36,863 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 24957 treesize of output 24381 [2023-11-23 22:06:38,400 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20890 treesize of output 20234 [2023-11-23 22:06:38,824 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27574 treesize of output 27086 [2023-11-23 22:06:40,723 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22634 treesize of output 22570 [2023-11-23 22:06:50,899 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 4 [2023-11-23 22:06:51,005 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 150 treesize of output 140 [2023-11-23 22:06:53,923 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 9 trivial. 11 not checked. [2023-11-23 22:06:53,923 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-11-23 22:06:53,923 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1584564419] [2023-11-23 22:06:53,923 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1584564419] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 22:06:53,923 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 22:06:53,923 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 19 [2023-11-23 22:06:53,924 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1554561921] [2023-11-23 22:06:53,924 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 22:06:53,924 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2023-11-23 22:06:53,924 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-11-23 22:06:53,925 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2023-11-23 22:06:53,925 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=179, Unknown=9, NotChecked=160, Total=420 [2023-11-23 22:06:53,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:06:53,925 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2023-11-23 22:06:53,925 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 20 states have (on average 3.75) internal successors, (75), 20 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-23 22:06:53,925 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 24 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 20 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 11 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 8 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 19 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 17 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:06:53,926 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2023-11-23 22:06:56,153 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse6 (= (select (select |c_#memory_int| |c_~#value~0.base|) |c_~#value~0.offset|) |c_thr1Thread2of3ForFork0_dec_~dec__v~0#1|))) (and (or (and (forall ((v_DerPreprocessor_88 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_88) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (not (= (select (select .cse0 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32))) (= |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| |c_~#value~0.base|) (not (= (select (select (store (store (let ((.cse1 (store (select .cse0 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898))) (let ((.cse3 (store (store .cse0 |c_~#inc_flag~0.base| .cse1) |c_~#value~0.base| v_ArrVal_901))) (let ((.cse2 (store (select .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse1) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse2) |c_~#dec_flag~0.base| (store (select (store .cse3 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse2) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))))) |c_~#value~0.base| v_DerPreprocessor_85) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32)))))) (forall ((v_DerPreprocessor_88 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_452 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (v_prenex_454 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_455 (_ BitVec 32)) (v_prenex_456 (_ BitVec 32)) (v_prenex_453 (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (store (store |c_#memory_int| |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_88) |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_452))) (or (not (= (select (select (store (let ((.cse4 (store (select .cse5 |c_~#inc_flag~0.base|) v_prenex_455 v_prenex_453))) (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_prenex_452) |c_~#inc_flag~0.base| .cse4) |c_~#value~0.base| v_prenex_454) v_prenex_456 (store (select (store (store .cse5 |c_~#inc_flag~0.base| .cse4) |c_~#value~0.base| v_prenex_454) v_prenex_456) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))) (not (= (select (select .cse5 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32))))))) .cse6) (= |c_~#inc_flag~0.base| (_ bv4 32)) (= |c_~#dec_flag~0.offset| (_ bv0 32)) (= |c_~#dec_flag~0.base| (_ bv5 32)) (= (_ bv3 32) |c_~#value~0.base|) (or (let ((.cse8 (store |c_#memory_int| |c_~#dec_flag~0.base| (store (select |c_#memory_int| |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32))))) (and (forall ((v_ArrVal_895 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32))) (let ((.cse11 (store .cse8 |c_~#value~0.base| v_ArrVal_895))) (let ((.cse10 (store (select .cse11 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) (let ((.cse7 (store (store .cse11 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse10) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (not (= (select (select .cse7 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32))) (forall ((v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_84 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32))) (not (= (select (select (store (let ((.cse9 (store (select .cse7 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898))) (store (store (store (store .cse8 |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse9) |c_~#value~0.base| v_ArrVal_901) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (store (select (store (store (store (store .cse8 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse10) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse9) |c_~#value~0.base| v_ArrVal_901) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_84) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))))))))) (forall ((v_ArrVal_895 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ BitVec 32)) (|thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| (_ BitVec 32))) (or (= |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| |c_~#value~0.base|) (forall ((v_ArrVal_896 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_898 (_ BitVec 32)) (v_ArrVal_901 (Array (_ BitVec 32) (_ BitVec 32))) (|~#inc_flag~0.offset| (_ BitVec 32)) (v_DerPreprocessor_85 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_86 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (store .cse8 |c_~#value~0.base| v_ArrVal_895))) (let ((.cse15 (store (select .cse17 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset| (_ bv1 32)))) (let ((.cse16 (store (store .cse17 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse15) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896))) (or (not (= (select (select (store (store (let ((.cse12 (store (select .cse16 |c_~#inc_flag~0.base|) |~#inc_flag~0.offset| v_ArrVal_898))) (let ((.cse14 (store (store (store (store .cse8 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| .cse15) |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse12) |c_~#value~0.base| v_ArrVal_901))) (let ((.cse13 (store (select .cse14 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base|) |c_thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.offset| (_ bv1 32)))) (store (store (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t~0#1.base| v_ArrVal_896) |c_~#inc_flag~0.base| .cse12) |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse13) |c_~#dec_flag~0.base| (store (select (store .cse14 |thr1Thread3of3ForFork0_inc_~#inc__casret~0#1.base| .cse13) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset| (_ bv1 32)))))) |c_~#value~0.base| v_DerPreprocessor_85) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base| v_DerPreprocessor_86) |c_~#dec_flag~0.base|) |c_~#dec_flag~0.offset|) (_ bv0 32))) (not (= (select (select .cse16 |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.base|) |thr1Thread2of3ForFork0_dec_~#dec__casret~0#1.offset|) (_ bv0 32)))))))))))) (not .cse6)) (not (= (_ bv5 32) |c_ULTIMATE.start_main_~#t~0#1.base|)))) is different from false [2023-11-23 22:07:09,377 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:11,438 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:13,443 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:16,227 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:19,769 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:22,568 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:26,031 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:28,038 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:31,156 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] [2023-11-23 22:07:34,294 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [0] Killed by 15