./Ultimate.py --spec /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/properties/termination.prp --file /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 84cfde4a Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c -s /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d84130cab59568fb669543ac086f4847eedfc87145b3c30d32e19c1d0d03b42f --- Real Ultimate output --- This is Ultimate 0.2.5-dev-84cfde4 [2024-10-12 00:46:56,643 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-12 00:46:56,708 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-10-12 00:46:56,715 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-12 00:46:56,716 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-12 00:46:56,746 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-12 00:46:56,747 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-12 00:46:56,748 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-12 00:46:56,749 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-12 00:46:56,750 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-12 00:46:56,751 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-12 00:46:56,751 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-12 00:46:56,751 INFO L153 SettingsManager]: * Use SBE=true [2024-10-12 00:46:56,752 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-10-12 00:46:56,752 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-10-12 00:46:56,752 INFO L153 SettingsManager]: * Use old map elimination=false [2024-10-12 00:46:56,752 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-10-12 00:46:56,753 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-10-12 00:46:56,753 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-10-12 00:46:56,753 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-12 00:46:56,753 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-10-12 00:46:56,757 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-12 00:46:56,757 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-12 00:46:56,758 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-12 00:46:56,758 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-12 00:46:56,758 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-10-12 00:46:56,758 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-10-12 00:46:56,759 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-10-12 00:46:56,759 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-12 00:46:56,759 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-10-12 00:46:56,759 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-12 00:46:56,759 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-12 00:46:56,760 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-10-12 00:46:56,760 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-12 00:46:56,760 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-12 00:46:56,760 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-12 00:46:56,760 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-12 00:46:56,761 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-12 00:46:56,761 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-10-12 00:46:56,761 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR 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-clean/releaseScripts/default/UAutomizer-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-clean/releaseScripts/default/UAutomizer-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(F end) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer 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 -> d84130cab59568fb669543ac086f4847eedfc87145b3c30d32e19c1d0d03b42f [2024-10-12 00:46:57,031 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-12 00:46:57,056 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-12 00:46:57,059 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-12 00:46:57,061 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-12 00:46:57,061 INFO L274 PluginConnector]: CDTParser initialized [2024-10-12 00:46:57,063 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c [2024-10-12 00:46:58,518 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-12 00:46:58,819 INFO L384 CDTParser]: Found 1 translation units. [2024-10-12 00:46:58,819 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c [2024-10-12 00:46:58,846 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/e1806d687/1a03a19deaad40e4b64092b62957bc9e/FLAGfcd9a5b9d [2024-10-12 00:46:59,098 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/e1806d687/1a03a19deaad40e4b64092b62957bc9e [2024-10-12 00:46:59,101 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-12 00:46:59,102 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-12 00:46:59,103 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-12 00:46:59,103 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-12 00:46:59,109 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-12 00:46:59,110 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:46:59,110 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@781c0dce and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59, skipping insertion in model container [2024-10-12 00:46:59,111 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:46:59,173 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-12 00:46:59,713 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-12 00:46:59,729 INFO L200 MainTranslator]: Completed pre-run [2024-10-12 00:46:59,739 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Person.i","") [48] [2024-10-12 00:46:59,740 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Floor.i","") [169] [2024-10-12 00:46:59,741 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Specification13_spec.i","") [837] [2024-10-12 00:46:59,741 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Test.i","") [932] [2024-10-12 00:46:59,742 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"UnitTests.i","") [1290] [2024-10-12 00:46:59,742 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Elevator.i","") [1382] [2024-10-12 00:46:59,742 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"featureselect.i","") [2960] [2024-10-12 00:46:59,743 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"wsllib_check.i","") [2995] [2024-10-12 00:46:59,743 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"scenario.i","") [3004] [2024-10-12 00:46:59,743 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"libacc.i","") [3019] [2024-10-12 00:46:59,821 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-12 00:46:59,850 INFO L204 MainTranslator]: Completed translation [2024-10-12 00:46:59,851 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59 WrapperNode [2024-10-12 00:46:59,851 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-12 00:46:59,852 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-12 00:46:59,852 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-12 00:46:59,852 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-12 00:46:59,857 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:46:59,889 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:00,728 INFO L138 Inliner]: procedures = 93, calls = 347, calls flagged for inlining = 199, calls inlined = 1885, statements flattened = 66512 [2024-10-12 00:47:00,729 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-12 00:47:00,730 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-12 00:47:00,730 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-12 00:47:00,730 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-12 00:47:00,741 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:00,741 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:00,953 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:01,226 INFO L175 MemorySlicer]: Split 81 memory accesses to 20 slices as follows [2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, 2]. 9 percent of accesses are in the largest equivalence class. The 81 initializations are split as follows [2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, 2]. The 0 writes are split as follows [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]. [2024-10-12 00:47:01,226 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:01,227 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:01,647 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:02,260 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:02,324 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:02,403 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:02,704 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-12 00:47:02,706 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-12 00:47:02,706 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-12 00:47:02,707 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-12 00:47:02,708 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (1/1) ... [2024-10-12 00:47:02,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:02,724 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:02,743 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:02,746 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-10-12 00:47:02,792 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-12 00:47:02,793 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-10-12 00:47:02,793 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-10-12 00:47:02,794 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#6 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#7 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#8 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#9 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#10 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#11 [2024-10-12 00:47:02,795 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#12 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#13 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#14 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#15 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#16 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#17 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#18 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#19 [2024-10-12 00:47:02,796 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-12 00:47:02,796 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-12 00:47:03,053 INFO L238 CfgBuilder]: Building ICFG [2024-10-12 00:47:03,056 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-12 00:47:25,890 INFO L? ?]: Removed 28862 outVars from TransFormulas that were not future-live. [2024-10-12 00:47:25,891 INFO L287 CfgBuilder]: Performing block encoding [2024-10-12 00:47:26,109 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-12 00:47:26,109 INFO L314 CfgBuilder]: Removed 61 assume(true) statements. [2024-10-12 00:47:26,109 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.10 12:47:26 BoogieIcfgContainer [2024-10-12 00:47:26,109 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-12 00:47:26,111 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-10-12 00:47:26,111 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-10-12 00:47:26,116 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-10-12 00:47:26,116 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-12 00:47:26,117 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 12.10 12:46:59" (1/3) ... [2024-10-12 00:47:26,118 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@386e086 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 12.10 12:47:26, skipping insertion in model container [2024-10-12 00:47:26,119 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-12 00:47:26,119 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.10 12:46:59" (2/3) ... [2024-10-12 00:47:26,120 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@386e086 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 12.10 12:47:26, skipping insertion in model container [2024-10-12 00:47:26,120 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-12 00:47:26,120 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.10 12:47:26" (3/3) ... [2024-10-12 00:47:26,121 INFO L332 chiAutomizerObserver]: Analyzing ICFG elevator_spec13_product30.cil.c [2024-10-12 00:47:26,403 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-10-12 00:47:26,403 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-10-12 00:47:26,403 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-10-12 00:47:26,404 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-10-12 00:47:26,404 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-10-12 00:47:26,404 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-10-12 00:47:26,404 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-10-12 00:47:26,404 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-10-12 00:47:26,465 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 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) [2024-10-12 00:47:26,783 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4074 [2024-10-12 00:47:26,783 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:26,783 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:26,792 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:26,792 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:26,793 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-10-12 00:47:26,833 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 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) [2024-10-12 00:47:27,017 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4074 [2024-10-12 00:47:27,017 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:27,017 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:27,019 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:27,019 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:27,025 INFO L745 eck$LassoCheckResult]: Stem: 4669#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 4386#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 16602#select_helpers_returnLabel#1true assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 16276#select_features_returnLabel#1true assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 9632#valid_product_returnLabel#1true main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 9011#L1277true assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 10459#setup_returnLabel#1true assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 2461#L95true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 2418#getOrigin_returnLabel#1true aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 17148#L530true assume 0 == initPersonOnFloor_~floor#1; 11856#L531true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 14404#L638-1true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 13174#L322true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 12614#L334-2true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 9898#initPersonOnFloor_returnLabel#1true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 16222#aliceCall_returnLabel#1true havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 89#L95-1true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 9403#getOrigin_returnLabel#2true angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 7044#L530-1true assume 0 == initPersonOnFloor_~floor#1; 13078#L531-2true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 10115#L638-3true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 2952#L322-2true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 4390#L334-5true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 3106#initPersonOnFloor_returnLabel#2true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 7396#angelinaCall_returnLabel#1true havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 6809#getCurrentHeading_returnLabel#1true __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 12525#__utac_acc__Specification13_spec__1_returnLabel#1true havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 14232#areDoorsOpen_returnLabel#1true timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 2458#L2587true assume 0 != timeShift_~tmp~24#1; 5500#L2588true assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 17499#L2587-1true assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 5134#L869true assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 3712#L870true assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 12393#L2807true assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~3#1 := 0;existInLiftCallsInDirection_~i~3#1 := 1 + ~currentFloorID~0; 6368#L2811-2true [2024-10-12 00:47:27,025 INFO L747 eck$LassoCheckResult]: Loop: 6368#L2811-2true assume !false; 4977#L2812true assume existInLiftCallsInDirection_~i~3#1 < 5; 523#L2813true assume !(0 == existInLiftCallsInDirection_~i~3#1); 15400#$Ultimate##7112true assume !(1 == existInLiftCallsInDirection_~i~3#1); 15878#$Ultimate##7116true assume !(2 == existInLiftCallsInDirection_~i~3#1); 6474#$Ultimate##7120true assume !(3 == existInLiftCallsInDirection_~i~3#1); 2234#$Ultimate##7124true assume !(4 == existInLiftCallsInDirection_~i~3#1); 1017#L2854-1true existInLiftCallsInDirection_~i~3#1 := 1 + existInLiftCallsInDirection_~i~3#1; 6368#L2811-2true [2024-10-12 00:47:27,031 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:27,031 INFO L85 PathProgramCache]: Analyzing trace with hash -1529622645, now seen corresponding path program 1 times [2024-10-12 00:47:27,041 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:27,041 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [347757635] [2024-10-12 00:47:27,042 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:27,042 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:27,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:27,558 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:27,559 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:27,559 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [347757635] [2024-10-12 00:47:27,560 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [347757635] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:27,560 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:27,560 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-12 00:47:27,561 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1661482374] [2024-10-12 00:47:27,562 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:27,567 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:27,568 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:27,568 INFO L85 PathProgramCache]: Analyzing trace with hash -1374005635, now seen corresponding path program 1 times [2024-10-12 00:47:27,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:27,568 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [404184346] [2024-10-12 00:47:27,568 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:27,569 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:27,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:27,592 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:27,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:27,634 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:27,697 INFO L204 LassoAnalysis]: Preferences: [2024-10-12 00:47:27,698 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-12 00:47:27,698 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-12 00:47:27,698 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-12 00:47:27,698 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-10-12 00:47:27,698 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:27,698 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-12 00:47:27,699 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-12 00:47:27,699 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration1_Loop [2024-10-12 00:47:27,699 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-12 00:47:27,699 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-12 00:47:27,720 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-12 00:47:27,817 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-12 00:47:27,818 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-10-12 00:47:27,820 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:27,820 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:27,822 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:27,823 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2024-10-12 00:47:27,829 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-10-12 00:47:27,829 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-12 00:47:27,862 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Ended with exit code 0 [2024-10-12 00:47:27,862 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:27,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:27,865 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:27,867 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2024-10-12 00:47:27,869 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-10-12 00:47:27,869 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-12 00:47:27,910 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-10-12 00:47:27,915 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2024-10-12 00:47:27,916 INFO L204 LassoAnalysis]: Preferences: [2024-10-12 00:47:27,916 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-12 00:47:27,916 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-12 00:47:27,917 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-12 00:47:27,917 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-10-12 00:47:27,917 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:27,917 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-12 00:47:27,917 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-12 00:47:27,918 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration1_Loop [2024-10-12 00:47:27,918 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-12 00:47:27,918 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-12 00:47:27,919 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-12 00:47:27,988 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-12 00:47:27,992 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-10-12 00:47:27,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:27,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:27,996 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:27,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2024-10-12 00:47:27,999 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-10-12 00:47:28,011 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-10-12 00:47:28,011 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-10-12 00:47:28,012 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-10-12 00:47:28,012 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-10-12 00:47:28,012 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-10-12 00:47:28,014 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-10-12 00:47:28,014 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-10-12 00:47:28,016 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-10-12 00:47:28,022 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-10-12 00:47:28,022 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-10-12 00:47:28,023 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:28,023 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:28,047 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:28,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2024-10-12 00:47:28,050 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-10-12 00:47:28,051 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-10-12 00:47:28,051 INFO L474 LassoAnalysis]: Proved termination. [2024-10-12 00:47:28,052 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~3#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~3#1 Supporting invariants [] [2024-10-12 00:47:28,067 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Forceful destruction successful, exit code 0 [2024-10-12 00:47:28,069 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-10-12 00:47:28,097 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:28,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:28,235 INFO L255 TraceCheckSpWp]: Trace formula consists of 539 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-10-12 00:47:28,237 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-12 00:47:28,487 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2024-10-12 00:47:28,496 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:28,496 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-10-12 00:47:28,497 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-12 00:47:28,710 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:28,745 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 7 loop predicates [2024-10-12 00:47:28,780 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 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) Second operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 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) [2024-10-12 00:47:30,625 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 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). Second operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 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) Result 46772 states and 87884 transitions. Complement of second has 18 states. [2024-10-12 00:47:30,629 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 1 stem states 7 non-accepting loop states 1 accepting loop states [2024-10-12 00:47:30,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 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) [2024-10-12 00:47:30,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 60829 transitions. [2024-10-12 00:47:30,702 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60829 transitions. Stem has 34 letters. Loop has 8 letters. [2024-10-12 00:47:30,703 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-12 00:47:30,704 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60829 transitions. Stem has 42 letters. Loop has 8 letters. [2024-10-12 00:47:30,704 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-12 00:47:30,704 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60829 transitions. Stem has 34 letters. Loop has 16 letters. [2024-10-12 00:47:30,705 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-12 00:47:30,705 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46772 states and 87884 transitions. [2024-10-12 00:47:31,062 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8066 [2024-10-12 00:47:31,568 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46772 states to 32281 states and 60573 transitions. [2024-10-12 00:47:31,570 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32251 [2024-10-12 00:47:31,613 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32252 [2024-10-12 00:47:31,615 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32281 states and 60573 transitions. [2024-10-12 00:47:31,617 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:31,617 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32281 states and 60573 transitions. [2024-10-12 00:47:31,689 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32281 states and 60573 transitions. [2024-10-12 00:47:32,463 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32281 to 32255. [2024-10-12 00:47:32,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32255 states, 32255 states have (on average 1.876732289567509) internal successors, (60534), 32254 states have internal predecessors, (60534), 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) [2024-10-12 00:47:32,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32255 states to 32255 states and 60534 transitions. [2024-10-12 00:47:32,708 INFO L240 hiAutomatonCegarLoop]: Abstraction has 32255 states and 60534 transitions. [2024-10-12 00:47:32,708 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:32,712 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-12 00:47:32,712 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-12 00:47:32,714 INFO L87 Difference]: Start difference. First operand 32255 states and 60534 transitions. Second operand has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 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) [2024-10-12 00:47:33,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:33,643 INFO L93 Difference]: Finished difference Result 32237 states and 60403 transitions. [2024-10-12 00:47:33,643 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32237 states and 60403 transitions. [2024-10-12 00:47:33,808 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8050 [2024-10-12 00:47:33,970 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32237 states to 32228 states and 60394 transitions. [2024-10-12 00:47:33,971 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32209 [2024-10-12 00:47:34,043 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32209 [2024-10-12 00:47:34,045 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32228 states and 60394 transitions. [2024-10-12 00:47:34,045 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:34,046 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32228 states and 60394 transitions. [2024-10-12 00:47:34,103 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32228 states and 60394 transitions. [2024-10-12 00:47:34,639 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32228 to 17929. [2024-10-12 00:47:34,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17929 states, 17929 states have (on average 1.874003011880194) internal successors, (33599), 17928 states have internal predecessors, (33599), 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) [2024-10-12 00:47:34,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17929 states to 17929 states and 33599 transitions. [2024-10-12 00:47:34,717 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17929 states and 33599 transitions. [2024-10-12 00:47:34,717 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-12 00:47:34,718 INFO L425 stractBuchiCegarLoop]: Abstraction has 17929 states and 33599 transitions. [2024-10-12 00:47:34,718 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-10-12 00:47:34,718 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17929 states and 33599 transitions. [2024-10-12 00:47:34,786 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2024-10-12 00:47:34,787 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:34,787 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:34,788 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:34,788 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:34,789 INFO L745 eck$LassoCheckResult]: Stem: 138461#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 138047#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 138048#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 147163#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 144060#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 143545#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 143546#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 134860#L95 assume !(0 == getOrigin_~person#1); 131161#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 131162#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 134777#L530 assume 0 == initPersonOnFloor_~floor#1; 145617#L531 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 129529#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 146266#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 129782#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 144269#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 144270#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 129618#L95-1 assume !(0 == getOrigin_~person#1); 129619#L99-1 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 130377#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 141595#L530-1 assume 0 == initPersonOnFloor_~floor#1; 141596#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 129905#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 135729#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 130448#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 135978#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 135979#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 141331#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 141332#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 145959#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 134853#L2587 assume 0 != timeShift_~tmp~24#1; 134854#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 136464#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 139149#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 136998#L870 assume !(1 == ~prevDir~0); 136999#L896 assume 0 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 1;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 146667#L2807-2 assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~3#1 := 0;existInLiftCallsInDirection_~i~3#1 := 1 + ~currentFloorID~0; 141294#L2811-8 [2024-10-12 00:47:34,789 INFO L747 eck$LassoCheckResult]: Loop: 141294#L2811-8 assume !false; 141295#L2812-2 assume existInLiftCallsInDirection_~i~3#1 < 5; 141880#L2813-2 assume !(0 == existInLiftCallsInDirection_~i~3#1); 137266#$Ultimate##7268 assume !(1 == existInLiftCallsInDirection_~i~3#1); 137268#$Ultimate##7272 assume !(2 == existInLiftCallsInDirection_~i~3#1); 140189#$Ultimate##7276 assume !(3 == existInLiftCallsInDirection_~i~3#1); 140190#$Ultimate##7280 assume !(4 == existInLiftCallsInDirection_~i~3#1); 146223#L2854-5 existInLiftCallsInDirection_~i~3#1 := 1 + existInLiftCallsInDirection_~i~3#1; 141294#L2811-8 [2024-10-12 00:47:34,790 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:34,790 INFO L85 PathProgramCache]: Analyzing trace with hash 1898793016, now seen corresponding path program 1 times [2024-10-12 00:47:34,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:34,790 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1293339348] [2024-10-12 00:47:34,791 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:34,791 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:34,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:34,961 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:34,962 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:34,962 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1293339348] [2024-10-12 00:47:34,962 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1293339348] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:34,962 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:34,963 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-12 00:47:34,963 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1077078351] [2024-10-12 00:47:34,963 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:34,964 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:34,964 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:34,964 INFO L85 PathProgramCache]: Analyzing trace with hash 1728061053, now seen corresponding path program 1 times [2024-10-12 00:47:34,964 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:34,964 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1941830152] [2024-10-12 00:47:34,964 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:34,965 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:34,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:34,981 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:34,984 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:34,999 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:35,043 INFO L204 LassoAnalysis]: Preferences: [2024-10-12 00:47:35,044 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-12 00:47:35,044 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-12 00:47:35,044 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-12 00:47:35,044 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-10-12 00:47:35,044 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:35,044 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-12 00:47:35,044 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-12 00:47:35,044 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration2_Loop [2024-10-12 00:47:35,045 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-12 00:47:35,045 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-12 00:47:35,045 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-12 00:47:35,097 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-12 00:47:35,097 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-10-12 00:47:35,098 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:35,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:35,100 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:35,101 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2024-10-12 00:47:35,102 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-10-12 00:47:35,102 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-12 00:47:35,130 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2024-10-12 00:47:35,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:35,131 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:35,136 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:35,137 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2024-10-12 00:47:35,138 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-10-12 00:47:35,138 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-12 00:47:35,173 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-10-12 00:47:35,178 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Ended with exit code 0 [2024-10-12 00:47:35,179 INFO L204 LassoAnalysis]: Preferences: [2024-10-12 00:47:35,179 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-12 00:47:35,179 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-12 00:47:35,179 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-12 00:47:35,179 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-10-12 00:47:35,179 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:35,180 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-12 00:47:35,180 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-12 00:47:35,180 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration2_Loop [2024-10-12 00:47:35,180 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-12 00:47:35,180 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-12 00:47:35,181 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-12 00:47:35,235 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-12 00:47:35,236 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-10-12 00:47:35,236 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:35,236 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:35,238 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:35,239 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2024-10-12 00:47:35,241 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-10-12 00:47:35,254 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-10-12 00:47:35,254 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-10-12 00:47:35,254 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-10-12 00:47:35,254 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-10-12 00:47:35,255 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-10-12 00:47:35,256 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-10-12 00:47:35,256 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-10-12 00:47:35,260 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-10-12 00:47:35,263 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-10-12 00:47:35,264 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-10-12 00:47:35,264 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-12 00:47:35,264 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-12 00:47:35,266 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-12 00:47:35,267 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2024-10-12 00:47:35,268 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-10-12 00:47:35,268 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-10-12 00:47:35,268 INFO L474 LassoAnalysis]: Proved termination. [2024-10-12 00:47:35,268 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~3#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~3#1 Supporting invariants [] [2024-10-12 00:47:35,283 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2024-10-12 00:47:35,284 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-10-12 00:47:35,298 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:35,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:35,396 INFO L255 TraceCheckSpWp]: Trace formula consists of 542 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-10-12 00:47:35,398 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-12 00:47:35,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:35,452 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-10-12 00:47:35,453 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-12 00:47:35,611 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:35,612 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 7 loop predicates [2024-10-12 00:47:35,612 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 17929 states and 33599 transitions. cyclomatic complexity: 15704 Second operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 9 states have internal predecessors, (45), 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) [2024-10-12 00:47:36,109 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2024-10-12 00:47:36,928 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 17929 states and 33599 transitions. cyclomatic complexity: 15704. Second operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 9 states have internal predecessors, (45), 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) Result 32284 states and 60477 transitions. Complement of second has 17 states. [2024-10-12 00:47:36,928 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 9 states 1 stem states 7 non-accepting loop states 1 accepting loop states [2024-10-12 00:47:36,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 9 states have internal predecessors, (45), 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) [2024-10-12 00:47:36,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 33586 transitions. [2024-10-12 00:47:36,972 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33586 transitions. Stem has 37 letters. Loop has 8 letters. [2024-10-12 00:47:36,973 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-12 00:47:36,973 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33586 transitions. Stem has 45 letters. Loop has 8 letters. [2024-10-12 00:47:36,973 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-12 00:47:36,973 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33586 transitions. Stem has 37 letters. Loop has 16 letters. [2024-10-12 00:47:36,973 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-12 00:47:36,974 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32284 states and 60477 transitions. [2024-10-12 00:47:37,158 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8064 [2024-10-12 00:47:37,296 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32284 states to 32278 states and 60471 transitions. [2024-10-12 00:47:37,297 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32229 [2024-10-12 00:47:37,356 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32230 [2024-10-12 00:47:37,357 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32278 states and 60471 transitions. [2024-10-12 00:47:37,357 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:37,358 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32278 states and 60471 transitions. [2024-10-12 00:47:37,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32278 states and 60471 transitions. [2024-10-12 00:47:37,979 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32278 to 17953. [2024-10-12 00:47:38,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17953 states, 17953 states have (on average 1.8736144376984347) internal successors, (33637), 17952 states have internal predecessors, (33637), 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) [2024-10-12 00:47:38,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17953 states to 17953 states and 33637 transitions. [2024-10-12 00:47:38,050 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17953 states and 33637 transitions. [2024-10-12 00:47:38,050 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:38,050 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-12 00:47:38,051 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-12 00:47:38,051 INFO L87 Difference]: Start difference. First operand 17953 states and 33637 transitions. Second operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 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) [2024-10-12 00:47:38,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:38,450 INFO L93 Difference]: Finished difference Result 17971 states and 33655 transitions. [2024-10-12 00:47:38,450 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17971 states and 33655 transitions. [2024-10-12 00:47:38,530 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:38,599 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17971 states to 17971 states and 33655 transitions. [2024-10-12 00:47:38,600 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17933 [2024-10-12 00:47:38,620 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17933 [2024-10-12 00:47:38,621 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17971 states and 33655 transitions. [2024-10-12 00:47:38,621 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:38,621 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17971 states and 33655 transitions. [2024-10-12 00:47:38,961 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17971 states and 33655 transitions. [2024-10-12 00:47:39,139 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17971 to 17968. [2024-10-12 00:47:39,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17968 states, 17968 states have (on average 1.8728851291184327) internal successors, (33652), 17967 states have internal predecessors, (33652), 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) [2024-10-12 00:47:39,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17968 states to 17968 states and 33652 transitions. [2024-10-12 00:47:39,213 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17968 states and 33652 transitions. [2024-10-12 00:47:39,213 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-12 00:47:39,215 INFO L425 stractBuchiCegarLoop]: Abstraction has 17968 states and 33652 transitions. [2024-10-12 00:47:39,216 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-10-12 00:47:39,216 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17968 states and 33652 transitions. [2024-10-12 00:47:39,284 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:39,284 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:39,284 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:39,286 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:39,286 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:39,287 INFO L745 eck$LassoCheckResult]: Stem: 224777#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 224363#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 224364#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 233498#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 230384#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 229870#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 229871#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 221174#L95 assume !(0 == getOrigin_~person#1); 217475#L99 assume !(1 == getOrigin_~person#1); 217477#L103 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 220864#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 233648#L530 assume 0 == initPersonOnFloor_~floor#1; 231944#L531 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 215844#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 232596#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 216097#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 230595#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 230596#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 215933#L95-1 assume !(0 == getOrigin_~person#1); 215934#L99-1 assume !(1 == getOrigin_~person#1); 228207#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 216691#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 233644#L530-1 assume 0 == initPersonOnFloor_~floor#1; 232557#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 216220#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 222043#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 216762#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 222292#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 222293#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 227653#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 227654#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 232286#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 221167#L2587 assume 0 != timeShift_~tmp~24#1; 221168#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 222778#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 225465#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 223312#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 223314#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 225524#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 225525#L2877-2 [2024-10-12 00:47:39,288 INFO L747 eck$LassoCheckResult]: Loop: 225525#L2877-2 assume !false; 221997#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 221998#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 220307#L2886-2 assume !false; 220308#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 221248#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 225525#L2877-2 [2024-10-12 00:47:39,291 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:39,292 INFO L85 PathProgramCache]: Analyzing trace with hash 1378400671, now seen corresponding path program 1 times [2024-10-12 00:47:39,292 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:39,292 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [674078751] [2024-10-12 00:47:39,292 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:39,292 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:39,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:39,384 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:39,385 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:39,385 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [674078751] [2024-10-12 00:47:39,385 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [674078751] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:39,386 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:39,386 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-10-12 00:47:39,386 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [487963301] [2024-10-12 00:47:39,386 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:39,387 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:39,387 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:39,387 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 1 times [2024-10-12 00:47:39,387 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:39,387 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [432581804] [2024-10-12 00:47:39,387 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:39,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:39,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:39,401 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:39,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:39,417 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:39,447 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:39,448 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-12 00:47:39,448 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-12 00:47:39,448 INFO L87 Difference]: Start difference. First operand 17968 states and 33652 transitions. cyclomatic complexity: 15719 Second operand has 3 states, 3 states have (on average 13.0) internal successors, (39), 3 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) [2024-10-12 00:47:39,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:39,678 INFO L93 Difference]: Finished difference Result 17934 states and 33584 transitions. [2024-10-12 00:47:39,678 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17934 states and 33584 transitions. [2024-10-12 00:47:39,975 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:40,051 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17934 states to 17934 states and 33584 transitions. [2024-10-12 00:47:40,051 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17896 [2024-10-12 00:47:40,069 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17896 [2024-10-12 00:47:40,070 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17934 states and 33584 transitions. [2024-10-12 00:47:40,070 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:40,070 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17934 states and 33584 transitions. [2024-10-12 00:47:40,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17934 states and 33584 transitions. [2024-10-12 00:47:40,281 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17934 to 17934. [2024-10-12 00:47:40,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17934 states, 17934 states have (on average 1.8726441396230624) internal successors, (33584), 17933 states have internal predecessors, (33584), 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) [2024-10-12 00:47:40,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17934 states to 17934 states and 33584 transitions. [2024-10-12 00:47:40,351 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17934 states and 33584 transitions. [2024-10-12 00:47:40,352 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-12 00:47:40,352 INFO L425 stractBuchiCegarLoop]: Abstraction has 17934 states and 33584 transitions. [2024-10-12 00:47:40,353 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-10-12 00:47:40,353 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17934 states and 33584 transitions. [2024-10-12 00:47:40,402 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:40,402 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:40,402 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:40,403 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:40,403 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:40,404 INFO L745 eck$LassoCheckResult]: Stem: 260671#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 260257#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 260258#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 269376#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 266274#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 265760#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 265761#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 257074#L95 assume !(0 == getOrigin_~person#1); 253381#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 253382#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 256991#L530 assume !(0 == initPersonOnFloor_~floor#1); 268125#L557 assume !(1 == initPersonOnFloor_~floor#1); 255360#L584 assume !(2 == initPersonOnFloor_~floor#1); 255361#L611 assume 3 == initPersonOnFloor_~floor#1; 266845#L612 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_3~0 := 1; 251752#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 268475#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 252005#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 266484#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 266485#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 251841#L95-1 assume !(0 == getOrigin_~person#1); 251842#L99-1 assume !(1 == getOrigin_~person#1); 264097#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 252597#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 269522#L530-1 assume 0 == initPersonOnFloor_~floor#1; 268438#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 252128#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 257941#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 252668#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 258190#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 258191#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 263543#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 263544#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 268169#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 257067#L2587 assume 0 != timeShift_~tmp~24#1; 257068#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 258674#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 261357#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 259208#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 259210#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 261416#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 261417#L2877-2 [2024-10-12 00:47:40,404 INFO L747 eck$LassoCheckResult]: Loop: 261417#L2877-2 assume !false; 257895#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 257896#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 256210#L2886-2 assume !false; 256211#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 257148#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 261417#L2877-2 [2024-10-12 00:47:40,404 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:40,404 INFO L85 PathProgramCache]: Analyzing trace with hash 368657234, now seen corresponding path program 1 times [2024-10-12 00:47:40,405 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:40,405 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [469024641] [2024-10-12 00:47:40,405 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:40,405 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:40,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:40,517 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:40,518 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:40,518 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [469024641] [2024-10-12 00:47:40,518 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [469024641] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:40,518 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:40,518 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-12 00:47:40,518 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1775799922] [2024-10-12 00:47:40,518 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:40,519 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:40,519 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:40,519 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 2 times [2024-10-12 00:47:40,519 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:40,519 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1246264261] [2024-10-12 00:47:40,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:40,519 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:40,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:40,539 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:40,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:40,556 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:40,581 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:40,582 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-12 00:47:40,582 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-12 00:47:40,582 INFO L87 Difference]: Start difference. First operand 17934 states and 33584 transitions. cyclomatic complexity: 15685 Second operand has 5 states, 5 states have (on average 8.2) internal successors, (41), 5 states have internal predecessors, (41), 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) [2024-10-12 00:47:41,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:41,441 INFO L93 Difference]: Finished difference Result 17942 states and 33591 transitions. [2024-10-12 00:47:41,442 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17942 states and 33591 transitions. [2024-10-12 00:47:41,521 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:41,590 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17942 states to 17942 states and 33591 transitions. [2024-10-12 00:47:41,590 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17904 [2024-10-12 00:47:41,611 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17904 [2024-10-12 00:47:41,611 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17942 states and 33591 transitions. [2024-10-12 00:47:41,612 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:41,612 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17942 states and 33591 transitions. [2024-10-12 00:47:41,648 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17942 states and 33591 transitions. [2024-10-12 00:47:41,886 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17942 to 17934. [2024-10-12 00:47:41,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17934 states, 17934 states have (on average 1.8723095795695328) internal successors, (33578), 17933 states have internal predecessors, (33578), 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) [2024-10-12 00:47:41,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17934 states to 17934 states and 33578 transitions. [2024-10-12 00:47:41,964 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17934 states and 33578 transitions. [2024-10-12 00:47:41,964 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-12 00:47:41,965 INFO L425 stractBuchiCegarLoop]: Abstraction has 17934 states and 33578 transitions. [2024-10-12 00:47:41,965 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-10-12 00:47:41,965 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17934 states and 33578 transitions. [2024-10-12 00:47:42,027 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:42,027 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:42,027 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:42,028 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:42,028 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:42,029 INFO L745 eck$LassoCheckResult]: Stem: 296555#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 296141#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 296142#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 305260#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 302158#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 301644#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 301645#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 292958#L95 assume !(0 == getOrigin_~person#1); 289265#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 289266#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 292875#L530 assume !(0 == initPersonOnFloor_~floor#1); 304009#L557 assume !(1 == initPersonOnFloor_~floor#1); 291244#L584 assume !(2 == initPersonOnFloor_~floor#1); 291245#L611 assume 3 == initPersonOnFloor_~floor#1; 302729#L612 assume !(0 == initPersonOnFloor_~person#1); 302730#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 287636#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 304359#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 287889#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 302368#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 302369#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 287725#L95-1 assume !(0 == getOrigin_~person#1); 287726#L99-1 assume !(1 == getOrigin_~person#1); 299981#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 288481#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 305406#L530-1 assume 0 == initPersonOnFloor_~floor#1; 304322#L531-2 assume !(0 == initPersonOnFloor_~person#1); 304156#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 288012#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 293825#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 288552#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 294074#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 294075#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 299427#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 299428#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 304053#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 292951#L2587 assume 0 != timeShift_~tmp~24#1; 292952#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 294558#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 297241#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 295092#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 295094#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 297300#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 297301#L2877-2 [2024-10-12 00:47:42,029 INFO L747 eck$LassoCheckResult]: Loop: 297301#L2877-2 assume !false; 293779#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 293780#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 292094#L2886-2 assume !false; 292095#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 293032#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 297301#L2877-2 [2024-10-12 00:47:42,029 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:42,030 INFO L85 PathProgramCache]: Analyzing trace with hash 590101782, now seen corresponding path program 1 times [2024-10-12 00:47:42,030 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:42,030 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2139029210] [2024-10-12 00:47:42,030 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:42,030 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:42,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:42,134 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:42,135 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:42,135 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2139029210] [2024-10-12 00:47:42,136 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2139029210] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:42,136 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:42,136 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-12 00:47:42,136 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1758900375] [2024-10-12 00:47:42,136 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:42,137 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:42,137 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:42,137 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 3 times [2024-10-12 00:47:42,137 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:42,138 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1343589992] [2024-10-12 00:47:42,138 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:42,138 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:42,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:42,158 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:42,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:42,184 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:42,367 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:42,367 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-12 00:47:42,367 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-12 00:47:42,367 INFO L87 Difference]: Start difference. First operand 17934 states and 33578 transitions. cyclomatic complexity: 15679 Second operand has 4 states, 4 states have (on average 10.75) internal successors, (43), 4 states have internal predecessors, (43), 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) [2024-10-12 00:47:42,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:42,648 INFO L93 Difference]: Finished difference Result 17938 states and 33581 transitions. [2024-10-12 00:47:42,648 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17938 states and 33581 transitions. [2024-10-12 00:47:42,713 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:42,763 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17938 states to 17938 states and 33581 transitions. [2024-10-12 00:47:42,763 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17900 [2024-10-12 00:47:42,782 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17900 [2024-10-12 00:47:42,782 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17938 states and 33581 transitions. [2024-10-12 00:47:42,783 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:42,783 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17938 states and 33581 transitions. [2024-10-12 00:47:42,812 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17938 states and 33581 transitions. [2024-10-12 00:47:43,002 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17938 to 17938. [2024-10-12 00:47:43,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17938 states, 17938 states have (on average 1.8720593154197793) internal successors, (33581), 17937 states have internal predecessors, (33581), 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) [2024-10-12 00:47:43,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17938 states to 17938 states and 33581 transitions. [2024-10-12 00:47:43,055 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17938 states and 33581 transitions. [2024-10-12 00:47:43,056 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-12 00:47:43,056 INFO L425 stractBuchiCegarLoop]: Abstraction has 17938 states and 33581 transitions. [2024-10-12 00:47:43,056 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-10-12 00:47:43,056 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17938 states and 33581 transitions. [2024-10-12 00:47:43,099 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:43,099 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:43,099 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:43,100 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:43,100 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:43,100 INFO L745 eck$LassoCheckResult]: Stem: 332436#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 332022#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 332023#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 341141#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 338039#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 337525#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 337526#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 328837#L95 assume !(0 == getOrigin_~person#1); 325144#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 325145#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 328754#L530 assume !(0 == initPersonOnFloor_~floor#1); 339890#L557 assume !(1 == initPersonOnFloor_~floor#1); 327123#L584 assume !(2 == initPersonOnFloor_~floor#1); 327124#L611 assume 3 == initPersonOnFloor_~floor#1; 338610#L612 assume !(0 == initPersonOnFloor_~person#1); 338611#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 323515#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 340240#L322 assume !(0 == callOnFloor_~floorID#1); 323937#L325 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 323768#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 338249#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 338250#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 323604#L95-1 assume !(0 == getOrigin_~person#1); 323605#L99-1 assume !(1 == getOrigin_~person#1); 335862#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 324360#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 341287#L530-1 assume 0 == initPersonOnFloor_~floor#1; 340203#L531-2 assume !(0 == initPersonOnFloor_~person#1); 340037#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 329729#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 341302#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 324431#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 329954#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 329955#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 335308#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 335309#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 339934#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 328830#L2587 assume 0 != timeShift_~tmp~24#1; 328831#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 330438#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 333122#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 330972#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 330974#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 333181#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 333182#L2877-2 [2024-10-12 00:47:43,101 INFO L747 eck$LassoCheckResult]: Loop: 333182#L2877-2 assume !false; 329658#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 329659#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 327973#L2886-2 assume !false; 327974#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 328911#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 333182#L2877-2 [2024-10-12 00:47:43,101 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:43,101 INFO L85 PathProgramCache]: Analyzing trace with hash -1215423119, now seen corresponding path program 1 times [2024-10-12 00:47:43,101 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:43,101 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [809596040] [2024-10-12 00:47:43,102 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:43,102 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:43,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:43,287 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:43,288 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:43,288 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [809596040] [2024-10-12 00:47:43,288 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [809596040] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:43,288 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:43,288 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-12 00:47:43,288 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [620177720] [2024-10-12 00:47:43,289 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:43,289 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:43,289 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:43,289 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 4 times [2024-10-12 00:47:43,290 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:43,290 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [235891883] [2024-10-12 00:47:43,290 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:43,290 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:43,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:43,302 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:43,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:43,312 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:43,336 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:43,337 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-12 00:47:43,337 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-12 00:47:43,337 INFO L87 Difference]: Start difference. First operand 17938 states and 33581 transitions. cyclomatic complexity: 15678 Second operand has 4 states, 4 states have (on average 11.0) internal successors, (44), 4 states have internal predecessors, (44), 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) [2024-10-12 00:47:43,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:43,618 INFO L93 Difference]: Finished difference Result 17944 states and 33586 transitions. [2024-10-12 00:47:43,618 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17944 states and 33586 transitions. [2024-10-12 00:47:43,683 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:43,732 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17944 states to 17944 states and 33586 transitions. [2024-10-12 00:47:43,732 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17906 [2024-10-12 00:47:43,749 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17906 [2024-10-12 00:47:43,749 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17944 states and 33586 transitions. [2024-10-12 00:47:43,750 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:43,750 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17944 states and 33586 transitions. [2024-10-12 00:47:43,778 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17944 states and 33586 transitions. [2024-10-12 00:47:43,915 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17944 to 17944. [2024-10-12 00:47:43,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17944 states, 17944 states have (on average 1.8717119928666963) internal successors, (33586), 17943 states have internal predecessors, (33586), 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) [2024-10-12 00:47:43,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17944 states to 17944 states and 33586 transitions. [2024-10-12 00:47:43,968 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17944 states and 33586 transitions. [2024-10-12 00:47:43,969 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-12 00:47:43,969 INFO L425 stractBuchiCegarLoop]: Abstraction has 17944 states and 33586 transitions. [2024-10-12 00:47:43,969 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-10-12 00:47:43,969 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17944 states and 33586 transitions. [2024-10-12 00:47:44,073 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:44,074 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:44,074 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:44,074 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:44,074 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:44,075 INFO L745 eck$LassoCheckResult]: Stem: 368326#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 367912#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 367913#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 377032#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 373930#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 373416#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 373417#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 364727#L95 assume !(0 == getOrigin_~person#1); 361032#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 361033#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 364644#L530 assume !(0 == initPersonOnFloor_~floor#1); 375781#L557 assume !(1 == initPersonOnFloor_~floor#1); 363011#L584 assume !(2 == initPersonOnFloor_~floor#1); 363012#L611 assume 3 == initPersonOnFloor_~floor#1; 374501#L612 assume !(0 == initPersonOnFloor_~person#1); 374502#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 359404#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 376131#L322 assume !(0 == callOnFloor_~floorID#1); 359826#L325 assume !(1 == callOnFloor_~floorID#1); 359827#L328 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 359657#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 374140#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 374141#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 359493#L95-1 assume !(0 == getOrigin_~person#1); 359494#L99-1 assume !(1 == getOrigin_~person#1); 371753#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 360249#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 377178#L530-1 assume 0 == initPersonOnFloor_~floor#1; 376094#L531-2 assume !(0 == initPersonOnFloor_~person#1); 375928#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 365619#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 377194#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 363884#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 365844#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 365845#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 371199#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 371200#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 375825#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 364720#L2587 assume 0 != timeShift_~tmp~24#1; 364721#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 366328#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 369012#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 366862#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 366864#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 369071#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 369072#L2877-2 [2024-10-12 00:47:44,075 INFO L747 eck$LassoCheckResult]: Loop: 369072#L2877-2 assume !false; 365548#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 365549#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 363862#L2886-2 assume !false; 363863#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 364801#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 369072#L2877-2 [2024-10-12 00:47:44,076 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:44,076 INFO L85 PathProgramCache]: Analyzing trace with hash -1197021167, now seen corresponding path program 1 times [2024-10-12 00:47:44,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:44,076 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [34271564] [2024-10-12 00:47:44,076 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:44,077 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:44,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:44,165 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:44,166 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:44,166 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [34271564] [2024-10-12 00:47:44,166 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [34271564] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:44,166 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:44,166 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-12 00:47:44,166 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [173850112] [2024-10-12 00:47:44,166 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:44,166 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:44,167 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:44,167 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 5 times [2024-10-12 00:47:44,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:44,167 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [186550478] [2024-10-12 00:47:44,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:44,167 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:44,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:44,182 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:44,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:44,193 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:44,213 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:44,214 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-12 00:47:44,214 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-12 00:47:44,214 INFO L87 Difference]: Start difference. First operand 17944 states and 33586 transitions. cyclomatic complexity: 15677 Second operand has 4 states, 4 states have (on average 11.25) internal successors, (45), 4 states have internal predecessors, (45), 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) [2024-10-12 00:47:44,555 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:44,556 INFO L93 Difference]: Finished difference Result 17952 states and 33593 transitions. [2024-10-12 00:47:44,556 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17952 states and 33593 transitions. [2024-10-12 00:47:44,625 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:44,678 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17952 states to 17952 states and 33593 transitions. [2024-10-12 00:47:44,678 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17914 [2024-10-12 00:47:44,693 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17914 [2024-10-12 00:47:44,694 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17952 states and 33593 transitions. [2024-10-12 00:47:44,698 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:44,698 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17952 states and 33593 transitions. [2024-10-12 00:47:44,720 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17952 states and 33593 transitions. [2024-10-12 00:47:45,111 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17952 to 17952. [2024-10-12 00:47:45,138 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17952 states, 17952 states have (on average 1.871267825311943) internal successors, (33593), 17951 states have internal predecessors, (33593), 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) [2024-10-12 00:47:45,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17952 states to 17952 states and 33593 transitions. [2024-10-12 00:47:45,174 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17952 states and 33593 transitions. [2024-10-12 00:47:45,174 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-12 00:47:45,175 INFO L425 stractBuchiCegarLoop]: Abstraction has 17952 states and 33593 transitions. [2024-10-12 00:47:45,175 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-10-12 00:47:45,175 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17952 states and 33593 transitions. [2024-10-12 00:47:45,218 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:45,218 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:45,218 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:45,219 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:45,219 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:45,219 INFO L745 eck$LassoCheckResult]: Stem: 404231#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 403817#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 403818#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 412937#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 409835#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 409321#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 409322#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 400631#L95 assume !(0 == getOrigin_~person#1); 396936#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 396937#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 400548#L530 assume !(0 == initPersonOnFloor_~floor#1); 411686#L557 assume !(1 == initPersonOnFloor_~floor#1); 398915#L584 assume !(2 == initPersonOnFloor_~floor#1); 398916#L611 assume 3 == initPersonOnFloor_~floor#1; 410406#L612 assume !(0 == initPersonOnFloor_~person#1); 410407#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 395307#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 412036#L322 assume !(0 == callOnFloor_~floorID#1); 395729#L325 assume !(1 == callOnFloor_~floorID#1); 395730#L328 assume !(2 == callOnFloor_~floorID#1); 395559#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 395560#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 410045#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 410046#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 395396#L95-1 assume !(0 == getOrigin_~person#1); 395397#L99-1 assume !(1 == getOrigin_~person#1); 407658#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 396152#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 413083#L530-1 assume 0 == initPersonOnFloor_~floor#1; 411999#L531-2 assume !(0 == initPersonOnFloor_~person#1); 411833#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 401523#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 413100#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 403354#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 401748#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 401749#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 407104#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 407105#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 411730#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 400624#L2587 assume 0 != timeShift_~tmp~24#1; 400625#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 402232#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 404917#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 402766#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 402768#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 404976#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 404977#L2877-2 [2024-10-12 00:47:45,219 INFO L747 eck$LassoCheckResult]: Loop: 404977#L2877-2 assume !false; 401452#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 401453#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 399767#L2886-2 assume !false; 399768#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 400705#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 404977#L2877-2 [2024-10-12 00:47:45,220 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:45,220 INFO L85 PathProgramCache]: Analyzing trace with hash -471461620, now seen corresponding path program 1 times [2024-10-12 00:47:45,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:45,220 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [655089302] [2024-10-12 00:47:45,220 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:45,220 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:45,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:45,336 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:45,336 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:45,336 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [655089302] [2024-10-12 00:47:45,337 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [655089302] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:45,337 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:45,337 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-12 00:47:45,337 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1466409174] [2024-10-12 00:47:45,337 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:45,337 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:45,338 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:45,338 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 6 times [2024-10-12 00:47:45,338 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:45,338 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [453538274] [2024-10-12 00:47:45,338 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:45,338 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:45,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:45,350 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:45,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:45,360 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:45,382 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:45,383 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-12 00:47:45,383 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-12 00:47:45,383 INFO L87 Difference]: Start difference. First operand 17952 states and 33593 transitions. cyclomatic complexity: 15676 Second operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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) [2024-10-12 00:47:45,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:45,776 INFO L93 Difference]: Finished difference Result 17938 states and 33567 transitions. [2024-10-12 00:47:45,776 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17938 states and 33567 transitions. [2024-10-12 00:47:46,068 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:46,113 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17938 states to 17938 states and 33567 transitions. [2024-10-12 00:47:46,114 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17900 [2024-10-12 00:47:46,126 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17900 [2024-10-12 00:47:46,126 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17938 states and 33567 transitions. [2024-10-12 00:47:46,136 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:46,136 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17938 states and 33567 transitions. [2024-10-12 00:47:46,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17938 states and 33567 transitions. [2024-10-12 00:47:46,279 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17938 to 17938. [2024-10-12 00:47:46,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17938 states, 17938 states have (on average 1.8712788493700525) internal successors, (33567), 17937 states have internal predecessors, (33567), 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) [2024-10-12 00:47:46,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17938 states to 17938 states and 33567 transitions. [2024-10-12 00:47:46,331 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17938 states and 33567 transitions. [2024-10-12 00:47:46,331 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-12 00:47:46,332 INFO L425 stractBuchiCegarLoop]: Abstraction has 17938 states and 33567 transitions. [2024-10-12 00:47:46,332 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-10-12 00:47:46,332 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17938 states and 33567 transitions. [2024-10-12 00:47:46,375 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:46,375 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:46,375 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:46,375 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:46,376 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:46,376 INFO L745 eck$LassoCheckResult]: Stem: 440125#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 439711#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 439712#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 448825#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 445728#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 445213#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 445214#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 436526#L95 assume !(0 == getOrigin_~person#1); 432832#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 432833#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 436443#L530 assume !(0 == initPersonOnFloor_~floor#1); 447578#L557 assume !(1 == initPersonOnFloor_~floor#1); 434811#L584 assume !(2 == initPersonOnFloor_~floor#1); 434812#L611 assume 3 == initPersonOnFloor_~floor#1; 446298#L612 assume !(0 == initPersonOnFloor_~person#1); 446299#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 431205#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 447925#L322 assume !(0 == callOnFloor_~floorID#1); 431627#L325 assume !(1 == callOnFloor_~floorID#1); 431628#L328 assume !(2 == callOnFloor_~floorID#1); 431457#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 431458#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 445937#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 445938#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 431294#L95-1 assume !(0 == getOrigin_~person#1); 431295#L99-1 assume !(1 == getOrigin_~person#1); 443549#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 445525#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 443262#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 443263#L557-1 assume 1 == initPersonOnFloor_~floor#1; 446166#L558-2 assume !(0 == initPersonOnFloor_~person#1); 444711#L561-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_1~0 := 1; 435656#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 448986#L322-2 assume !(0 == callOnFloor_~floorID#1); 448983#L325-2 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 439251#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 437641#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 437642#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 442998#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 442999#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 447622#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 436519#L2587 assume 0 != timeShift_~tmp~24#1; 436520#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 438125#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 440811#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 438659#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 438661#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 440870#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 440871#L2877-2 [2024-10-12 00:47:46,376 INFO L747 eck$LassoCheckResult]: Loop: 440871#L2877-2 assume !false; 437347#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 437348#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 435662#L2886-2 assume !false; 435663#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 436602#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 440871#L2877-2 [2024-10-12 00:47:46,377 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:46,377 INFO L85 PathProgramCache]: Analyzing trace with hash 1355773026, now seen corresponding path program 1 times [2024-10-12 00:47:46,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:46,377 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1937318814] [2024-10-12 00:47:46,377 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:46,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:46,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:46,472 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:46,472 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:46,472 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1937318814] [2024-10-12 00:47:46,472 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1937318814] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:46,472 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:46,473 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-12 00:47:46,473 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1516132633] [2024-10-12 00:47:46,473 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:46,473 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:46,473 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:46,473 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 7 times [2024-10-12 00:47:46,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:46,474 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1436606694] [2024-10-12 00:47:46,474 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:46,474 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:46,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:46,482 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:46,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:46,491 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:46,512 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:46,513 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-12 00:47:46,513 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-12 00:47:46,513 INFO L87 Difference]: Start difference. First operand 17938 states and 33567 transitions. cyclomatic complexity: 15664 Second operand has 5 states, 5 states have (on average 9.6) internal successors, (48), 5 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) [2024-10-12 00:47:47,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:47,099 INFO L93 Difference]: Finished difference Result 17932 states and 33554 transitions. [2024-10-12 00:47:47,099 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17932 states and 33554 transitions. [2024-10-12 00:47:47,175 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:47,226 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17932 states to 17932 states and 33554 transitions. [2024-10-12 00:47:47,226 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17894 [2024-10-12 00:47:47,238 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17894 [2024-10-12 00:47:47,238 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17932 states and 33554 transitions. [2024-10-12 00:47:47,255 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:47,255 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17932 states and 33554 transitions. [2024-10-12 00:47:47,286 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17932 states and 33554 transitions. [2024-10-12 00:47:47,453 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17932 to 17932. [2024-10-12 00:47:47,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17932 states, 17932 states have (on average 1.8711800133838947) internal successors, (33554), 17931 states have internal predecessors, (33554), 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) [2024-10-12 00:47:47,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17932 states to 17932 states and 33554 transitions. [2024-10-12 00:47:47,512 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17932 states and 33554 transitions. [2024-10-12 00:47:47,512 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-12 00:47:47,513 INFO L425 stractBuchiCegarLoop]: Abstraction has 17932 states and 33554 transitions. [2024-10-12 00:47:47,513 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-10-12 00:47:47,513 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17932 states and 33554 transitions. [2024-10-12 00:47:47,573 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:47,573 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:47,573 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:47,574 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:47,574 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:47,574 INFO L745 eck$LassoCheckResult]: Stem: 475999#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 475585#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 475586#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 484697#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 481600#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 481085#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 481086#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 472401#L95 assume !(0 == getOrigin_~person#1); 468713#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 468714#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 472318#L530 assume !(0 == initPersonOnFloor_~floor#1); 483450#L557 assume !(1 == initPersonOnFloor_~floor#1); 470689#L584 assume !(2 == initPersonOnFloor_~floor#1); 470690#L611 assume 3 == initPersonOnFloor_~floor#1; 482170#L612 assume !(0 == initPersonOnFloor_~person#1); 482171#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 467083#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 483797#L322 assume !(0 == callOnFloor_~floorID#1); 467505#L325 assume !(1 == callOnFloor_~floorID#1); 467506#L328 assume !(2 == callOnFloor_~floorID#1); 467335#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 467336#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 481809#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 481810#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 467172#L95-1 assume !(0 == getOrigin_~person#1); 467173#L99-1 assume !(1 == getOrigin_~person#1); 479423#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 481397#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 479136#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 479137#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 484343#L584-1 assume 2 == initPersonOnFloor_~floor#1; 481452#L585-2 assume !(0 == initPersonOnFloor_~person#1); 476970#L588-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_2~0 := 1; 470709#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 484859#L322-2 assume !(0 == callOnFloor_~floorID#1); 484858#L325-2 assume !(1 == callOnFloor_~floorID#1); 484857#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 475128#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 473516#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 473517#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 478872#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 478873#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 483494#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 472394#L2587 assume 0 != timeShift_~tmp~24#1; 472395#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 473999#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 476685#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 474535#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 474537#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 476744#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 476745#L2877-2 [2024-10-12 00:47:47,575 INFO L747 eck$LassoCheckResult]: Loop: 476745#L2877-2 assume !false; 473222#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 473223#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 471537#L2886-2 assume !false; 471538#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 472477#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 476745#L2877-2 [2024-10-12 00:47:47,575 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:47,575 INFO L85 PathProgramCache]: Analyzing trace with hash 1516125827, now seen corresponding path program 1 times [2024-10-12 00:47:47,575 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:47,575 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1531876099] [2024-10-12 00:47:47,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:47,575 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:47,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:47,672 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:47,672 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:47,672 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1531876099] [2024-10-12 00:47:47,673 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1531876099] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:47,673 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:47,673 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-12 00:47:47,673 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1104071399] [2024-10-12 00:47:47,673 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:47,674 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:47,674 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:47,675 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 8 times [2024-10-12 00:47:47,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:47,676 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [5363647] [2024-10-12 00:47:47,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:47,676 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:47,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:47,693 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:47,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:47,699 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:47,715 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:47,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-12 00:47:47,715 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-12 00:47:47,715 INFO L87 Difference]: Start difference. First operand 17932 states and 33554 transitions. cyclomatic complexity: 15657 Second operand has 4 states, 4 states have (on average 12.5) internal successors, (50), 4 states have internal predecessors, (50), 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) [2024-10-12 00:47:48,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:48,352 INFO L93 Difference]: Finished difference Result 17948 states and 33566 transitions. [2024-10-12 00:47:48,353 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17948 states and 33566 transitions. [2024-10-12 00:47:48,405 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:48,448 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17948 states to 17948 states and 33566 transitions. [2024-10-12 00:47:48,448 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17910 [2024-10-12 00:47:48,459 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17910 [2024-10-12 00:47:48,459 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17948 states and 33566 transitions. [2024-10-12 00:47:48,471 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:48,472 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17948 states and 33566 transitions. [2024-10-12 00:47:48,489 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17948 states and 33566 transitions. [2024-10-12 00:47:48,610 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17948 to 17932. [2024-10-12 00:47:48,629 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17932 states, 17932 states have (on average 1.870733883560116) internal successors, (33546), 17931 states have internal predecessors, (33546), 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) [2024-10-12 00:47:48,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17932 states to 17932 states and 33546 transitions. [2024-10-12 00:47:48,661 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17932 states and 33546 transitions. [2024-10-12 00:47:48,662 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-12 00:47:48,662 INFO L425 stractBuchiCegarLoop]: Abstraction has 17932 states and 33546 transitions. [2024-10-12 00:47:48,662 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-10-12 00:47:48,662 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17932 states and 33546 transitions. [2024-10-12 00:47:48,706 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-12 00:47:48,706 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:48,706 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:48,706 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:48,706 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:48,706 INFO L745 eck$LassoCheckResult]: Stem: 511886#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 511472#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 511473#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 520584#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 517487#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 516972#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 516973#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 508288#L95 assume !(0 == getOrigin_~person#1); 504600#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 504601#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 508205#L530 assume !(0 == initPersonOnFloor_~floor#1); 519337#L557 assume !(1 == initPersonOnFloor_~floor#1); 506576#L584 assume !(2 == initPersonOnFloor_~floor#1); 506577#L611 assume 3 == initPersonOnFloor_~floor#1; 518057#L612 assume !(0 == initPersonOnFloor_~person#1); 518058#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 502970#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 519684#L322 assume !(0 == callOnFloor_~floorID#1); 503392#L325 assume !(1 == callOnFloor_~floorID#1); 503393#L328 assume !(2 == callOnFloor_~floorID#1); 503222#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 503223#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 517696#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 517697#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 503059#L95-1 assume !(0 == getOrigin_~person#1); 503060#L99-1 assume !(1 == getOrigin_~person#1); 515311#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 517284#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 515023#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 515024#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 520230#L584-1 assume 2 == initPersonOnFloor_~floor#1; 517339#L585-2 assume !(0 == initPersonOnFloor_~person#1); 512857#L588-2 assume !(1 == initPersonOnFloor_~person#1); 512858#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 506596#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 520752#L322-2 assume !(0 == callOnFloor_~floorID#1); 520751#L325-2 assume !(1 == callOnFloor_~floorID#1); 520750#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 511017#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 509403#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 509404#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 514759#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 514760#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 519381#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 508281#L2587 assume 0 != timeShift_~tmp~24#1; 508282#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 509886#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 512572#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 510422#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 510424#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 512631#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 512632#L2877-2 [2024-10-12 00:47:48,707 INFO L747 eck$LassoCheckResult]: Loop: 512632#L2877-2 assume !false; 509111#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 509112#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 507424#L2886-2 assume !false; 507425#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 508364#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 512632#L2877-2 [2024-10-12 00:47:48,707 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:48,707 INFO L85 PathProgramCache]: Analyzing trace with hash -1488774646, now seen corresponding path program 1 times [2024-10-12 00:47:48,707 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:48,707 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1423209471] [2024-10-12 00:47:48,707 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:48,707 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:48,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:48,807 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:48,808 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:48,808 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1423209471] [2024-10-12 00:47:48,808 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1423209471] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:48,808 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:48,808 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-10-12 00:47:48,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1633124449] [2024-10-12 00:47:48,808 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:48,809 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:48,809 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:48,809 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 9 times [2024-10-12 00:47:48,809 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:48,809 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1827426082] [2024-10-12 00:47:48,809 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:48,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:48,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:48,822 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:48,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:48,829 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:48,848 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:48,848 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-12 00:47:48,849 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-12 00:47:48,849 INFO L87 Difference]: Start difference. First operand 17932 states and 33546 transitions. cyclomatic complexity: 15649 Second operand has 3 states, 3 states have (on average 17.0) internal successors, (51), 2 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) [2024-10-12 00:47:49,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:49,658 INFO L93 Difference]: Finished difference Result 33446 states and 62726 transitions. [2024-10-12 00:47:49,658 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33446 states and 62726 transitions. [2024-10-12 00:47:49,772 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7012 [2024-10-12 00:47:49,863 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33446 states to 33446 states and 62726 transitions. [2024-10-12 00:47:49,864 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33370 [2024-10-12 00:47:49,887 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33370 [2024-10-12 00:47:49,888 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33446 states and 62726 transitions. [2024-10-12 00:47:49,893 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:49,893 INFO L218 hiAutomatonCegarLoop]: Abstraction has 33446 states and 62726 transitions. [2024-10-12 00:47:49,920 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33446 states and 62726 transitions. [2024-10-12 00:47:50,143 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33446 to 28434. [2024-10-12 00:47:50,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28434 states, 28434 states have (on average 1.8723359358514455) internal successors, (53238), 28433 states have internal predecessors, (53238), 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) [2024-10-12 00:47:50,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28434 states to 28434 states and 53238 transitions. [2024-10-12 00:47:50,223 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28434 states and 53238 transitions. [2024-10-12 00:47:50,223 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-12 00:47:50,224 INFO L425 stractBuchiCegarLoop]: Abstraction has 28434 states and 53238 transitions. [2024-10-12 00:47:50,224 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-10-12 00:47:50,224 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28434 states and 53238 transitions. [2024-10-12 00:47:50,527 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7012 [2024-10-12 00:47:50,528 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:50,528 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:50,528 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:50,528 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:50,529 INFO L745 eck$LassoCheckResult]: Stem: 563293#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 562877#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 562878#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 572231#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 568975#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 568449#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 568450#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 559674#L95 assume !(0 == getOrigin_~person#1); 555985#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 555986#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 559592#L530 assume !(0 == initPersonOnFloor_~floor#1); 570877#L557 assume !(1 == initPersonOnFloor_~floor#1); 557960#L584 assume !(2 == initPersonOnFloor_~floor#1); 557961#L611 assume 3 == initPersonOnFloor_~floor#1; 569560#L612 assume !(0 == initPersonOnFloor_~person#1); 569561#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 554354#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 571234#L322 assume !(0 == callOnFloor_~floorID#1); 554776#L325 assume !(1 == callOnFloor_~floorID#1); 554777#L328 assume !(2 == callOnFloor_~floorID#1); 554606#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 554607#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 569191#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 569192#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 554446#L95-1 assume !(0 == getOrigin_~person#1); 554447#L99-1 assume !(1 == getOrigin_~person#1); 566764#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 568768#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 566469#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 566470#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 571824#L584-1 assume 2 == initPersonOnFloor_~floor#1; 568825#L585-2 assume !(0 == initPersonOnFloor_~person#1); 564271#L588-2 assume !(1 == initPersonOnFloor_~person#1); 564272#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 557980#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 572408#L322-2 assume !(0 == callOnFloor_~floorID#1); 572407#L325-2 assume !(1 == callOnFloor_~floorID#1); 572406#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 562424#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 560798#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 560799#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 566197#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 566198#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 570921#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 559667#L2587 assume !(0 != timeShift_~tmp~24#1);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 559669#L2309-1 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 561426#getCurrentFloorID_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 556503#L1645-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 556504#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 567399#stopRequestedAtCurrentFloor_returnLabel#2 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 569932#L2456-2 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 571081#L2547-3 assume !(1 == ~doorState~0); 572257#L2547-5 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 572258#L2212-2 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 563442#isAnyLiftButtonPressed_returnLabel#3 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 564535#L2185-2 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 566946#L1832-8 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 564612#L2001-8 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 554546#stopRequestedInDirection__wrappee__empty_returnLabel#9 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 556912#stopRequestedInDirection_returnLabel#3 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 556913#L2555-2 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 566659#L2247-3 assume !(1 == ~currentHeading~0); 565686#L2257-9 assume 0 == ~currentFloorID~0;~currentHeading~0 := 1; 556561#L2257-11 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 556562#L2263-7 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 562781#L2564-5 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 576710#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 575403#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 575404#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 576711#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 581642#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 581643#L2877-2 [2024-10-12 00:47:50,530 INFO L747 eck$LassoCheckResult]: Loop: 581643#L2877-2 assume !false; 581641#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 569429#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 558810#L2886-2 assume !false; 558811#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 559750#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 581643#L2877-2 [2024-10-12 00:47:50,530 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:50,530 INFO L85 PathProgramCache]: Analyzing trace with hash 339874181, now seen corresponding path program 1 times [2024-10-12 00:47:50,530 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:50,530 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2010163981] [2024-10-12 00:47:50,530 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:50,531 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:50,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:50,685 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:50,686 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:50,686 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2010163981] [2024-10-12 00:47:50,686 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2010163981] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:50,686 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:50,686 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-10-12 00:47:50,686 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [372493264] [2024-10-12 00:47:50,686 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:50,687 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:50,687 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:50,687 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 10 times [2024-10-12 00:47:50,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:50,687 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [207210271] [2024-10-12 00:47:50,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:50,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:50,699 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:50,699 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:50,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:50,707 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:50,726 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:50,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-10-12 00:47:50,727 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2024-10-12 00:47:50,727 INFO L87 Difference]: Start difference. First operand 28434 states and 53238 transitions. cyclomatic complexity: 24874 Second operand has 8 states, 8 states have (on average 8.875) internal successors, (71), 7 states have internal predecessors, (71), 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) [2024-10-12 00:47:51,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:51,794 INFO L93 Difference]: Finished difference Result 27491 states and 51074 transitions. [2024-10-12 00:47:51,794 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 27491 states and 51074 transitions. [2024-10-12 00:47:51,923 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8324 [2024-10-12 00:47:51,999 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 27491 states to 27491 states and 51074 transitions. [2024-10-12 00:47:51,999 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 27377 [2024-10-12 00:47:52,019 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 27377 [2024-10-12 00:47:52,019 INFO L73 IsDeterministic]: Start isDeterministic. Operand 27491 states and 51074 transitions. [2024-10-12 00:47:52,041 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:52,041 INFO L218 hiAutomatonCegarLoop]: Abstraction has 27491 states and 51074 transitions. [2024-10-12 00:47:52,074 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27491 states and 51074 transitions. [2024-10-12 00:47:52,360 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27491 to 27491. [2024-10-12 00:47:52,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27491 states, 27491 states have (on average 1.8578443854352333) internal successors, (51074), 27490 states have internal predecessors, (51074), 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) [2024-10-12 00:47:52,447 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27491 states to 27491 states and 51074 transitions. [2024-10-12 00:47:52,447 INFO L240 hiAutomatonCegarLoop]: Abstraction has 27491 states and 51074 transitions. [2024-10-12 00:47:52,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-10-12 00:47:52,448 INFO L425 stractBuchiCegarLoop]: Abstraction has 27491 states and 51074 transitions. [2024-10-12 00:47:52,448 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-10-12 00:47:52,448 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 27491 states and 51074 transitions. [2024-10-12 00:47:52,539 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8324 [2024-10-12 00:47:52,539 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:52,539 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:52,540 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:52,540 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:52,541 INFO L745 eck$LassoCheckResult]: Stem: 618420#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 618036#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 618037#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 626637#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 623615#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 623124#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 623125#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 615101#L95 assume !(0 == getOrigin_~person#1); 611770#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 611771#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 615029#L530 assume !(0 == initPersonOnFloor_~floor#1); 625381#L557 assume !(1 == initPersonOnFloor_~floor#1); 613552#L584 assume !(2 == initPersonOnFloor_~floor#1); 613553#L611 assume 3 == initPersonOnFloor_~floor#1; 624166#L612 assume !(0 == initPersonOnFloor_~person#1); 624167#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 610275#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 625716#L322 assume !(0 == callOnFloor_~floorID#1); 610655#L325 assume !(1 == callOnFloor_~floorID#1); 610656#L328 assume !(2 == callOnFloor_~floorID#1); 610505#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 610506#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 623813#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 623814#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 610355#L95-1 assume !(0 == getOrigin_~person#1); 610356#L99-1 assume !(1 == getOrigin_~person#1); 621572#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 623420#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 621302#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 621303#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 626253#L584-1 assume 2 == initPersonOnFloor_~floor#1; 623473#L585-2 assume !(0 == initPersonOnFloor_~person#1); 619307#L588-2 assume !(1 == initPersonOnFloor_~person#1); 619308#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 613568#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 627028#L322-2 assume !(0 == callOnFloor_~floorID#1); 627027#L325-2 assume !(1 == callOnFloor_~floorID#1); 627026#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 617614#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 616126#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 616127#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 621066#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 621067#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 625422#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 615095#L2587 assume 0 != timeShift_~tmp~24#1; 615096#L2588 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 619517#L2309 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 616235#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 616236#L1645 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 618699#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 610783#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 610784#L2456 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 613296#L2547 assume 1 == ~doorState~0;~doorState~0 := 0; 613297#L2547-2 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 626702#L2212 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 618375#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 623021#L2185 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 623022#L1832-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 615318#L2001-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 611107#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 611336#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 611176#L2555 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 611178#L2247 assume !(1 == ~currentHeading~0); 620422#L2257 assume !(0 == ~currentFloorID~0); 618306#L2257-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 618307#L2263-1 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 621190#L2564-2 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 626847#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 626834#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 626835#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 626846#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 626998#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 626999#L2877-2 [2024-10-12 00:47:52,541 INFO L747 eck$LassoCheckResult]: Loop: 626999#L2877-2 assume !false; 626996#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 626997#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 627009#L2886-2 assume !false; 627005#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 627006#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 626999#L2877-2 [2024-10-12 00:47:52,541 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:52,542 INFO L85 PathProgramCache]: Analyzing trace with hash -543451371, now seen corresponding path program 1 times [2024-10-12 00:47:52,542 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:52,542 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [827045792] [2024-10-12 00:47:52,542 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:52,542 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:52,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:52,617 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:52,617 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:52,618 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [827045792] [2024-10-12 00:47:52,618 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [827045792] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:52,618 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:52,618 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-10-12 00:47:52,618 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2081743422] [2024-10-12 00:47:52,620 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:52,620 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:52,621 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:52,621 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 11 times [2024-10-12 00:47:52,621 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:52,621 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [499430682] [2024-10-12 00:47:52,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:52,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:52,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:52,639 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:52,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:52,647 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:52,669 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:52,670 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-12 00:47:52,670 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-12 00:47:52,670 INFO L87 Difference]: Start difference. First operand 27491 states and 51074 transitions. cyclomatic complexity: 23711 Second operand has 3 states, 3 states have (on average 24.0) internal successors, (72), 2 states have internal predecessors, (72), 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) [2024-10-12 00:47:53,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:53,945 INFO L93 Difference]: Finished difference Result 42131 states and 77919 transitions. [2024-10-12 00:47:53,945 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 42131 states and 77919 transitions. [2024-10-12 00:47:54,088 INFO L131 ngComponentsAnalysis]: Automaton has 178 accepting balls. 12854 [2024-10-12 00:47:54,195 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 42131 states to 42131 states and 77919 transitions. [2024-10-12 00:47:54,195 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41981 [2024-10-12 00:47:54,227 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41981 [2024-10-12 00:47:54,227 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42131 states and 77919 transitions. [2024-10-12 00:47:54,261 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:54,261 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42131 states and 77919 transitions. [2024-10-12 00:47:54,293 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42131 states and 77919 transitions. [2024-10-12 00:47:54,975 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42131 to 42129. [2024-10-12 00:47:55,022 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42129 states, 42129 states have (on average 1.8494861022098792) internal successors, (77917), 42128 states have internal predecessors, (77917), 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) [2024-10-12 00:47:55,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42129 states to 42129 states and 77917 transitions. [2024-10-12 00:47:55,093 INFO L240 hiAutomatonCegarLoop]: Abstraction has 42129 states and 77917 transitions. [2024-10-12 00:47:55,093 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-12 00:47:55,093 INFO L425 stractBuchiCegarLoop]: Abstraction has 42129 states and 77917 transitions. [2024-10-12 00:47:55,093 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-10-12 00:47:55,094 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 42129 states and 77917 transitions. [2024-10-12 00:47:55,197 INFO L131 ngComponentsAnalysis]: Automaton has 178 accepting balls. 12854 [2024-10-12 00:47:55,197 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:55,197 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:55,198 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:55,198 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:55,198 INFO L745 eck$LassoCheckResult]: Stem: 688074#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 687685#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 687686#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 696499#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 693359#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 692846#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 692847#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 684737#L95 assume !(0 == getOrigin_~person#1); 681397#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 681398#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 684663#L530 assume !(0 == initPersonOnFloor_~floor#1); 695169#L557 assume !(1 == initPersonOnFloor_~floor#1); 683180#L584 assume !(2 == initPersonOnFloor_~floor#1); 683181#L611 assume 3 == initPersonOnFloor_~floor#1; 693919#L612 assume !(0 == initPersonOnFloor_~person#1); 693920#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 679903#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 695516#L322 assume !(0 == callOnFloor_~floorID#1); 680283#L325 assume !(1 == callOnFloor_~floorID#1); 680284#L328 assume !(2 == callOnFloor_~floorID#1); 680133#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 680134#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 693555#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 693556#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 679980#L95-1 assume !(0 == getOrigin_~person#1); 679981#L99-1 assume !(1 == getOrigin_~person#1); 691276#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 693153#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 691000#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 691001#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 696087#L584-1 assume 2 == initPersonOnFloor_~floor#1; 693209#L585-2 assume !(0 == initPersonOnFloor_~person#1); 688975#L588-2 assume !(1 == initPersonOnFloor_~person#1); 688976#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 683196#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 696938#L322-2 assume !(0 == callOnFloor_~floorID#1); 696937#L325-2 assume !(1 == callOnFloor_~floorID#1); 696936#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 687252#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 685757#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 685758#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 690760#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 690761#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 695213#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 684731#L2587 assume 0 != timeShift_~tmp~24#1; 684732#L2588 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 689190#L2309 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 685871#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 685872#L1645 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 688356#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 680408#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 680409#L2456 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 682922#L2547 assume 1 == ~doorState~0;~doorState~0 := 0; 682923#L2547-2 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 696581#L2212 assume !(0 != ~floorButtons_0~0); 693921#L2216 assume 0 != ~floorButtons_1~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 688028#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 692745#L2185 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 692746#L1832-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 684951#L2001-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 680734#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 680963#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 680804#L2555 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 680806#L2247 assume !(1 == ~currentHeading~0); 690113#L2257 assume !(0 == ~currentFloorID~0); 687960#L2257-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 687961#L2263-1 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 690885#L2564-2 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 696759#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 696746#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 696747#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 696758#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 696880#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 696881#L2877-2 [2024-10-12 00:47:55,198 INFO L747 eck$LassoCheckResult]: Loop: 696881#L2877-2 assume !false; 696878#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 696879#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 696898#L2886-2 assume !false; 696892#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 696893#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 696881#L2877-2 [2024-10-12 00:47:55,199 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:55,199 INFO L85 PathProgramCache]: Analyzing trace with hash -1554758627, now seen corresponding path program 1 times [2024-10-12 00:47:55,199 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:55,199 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [744525838] [2024-10-12 00:47:55,199 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:55,200 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:55,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:55,257 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:55,257 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:55,257 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [744525838] [2024-10-12 00:47:55,257 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [744525838] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:55,257 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:55,257 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-10-12 00:47:55,257 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1066152517] [2024-10-12 00:47:55,257 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:55,258 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:55,258 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:55,258 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 12 times [2024-10-12 00:47:55,258 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:55,258 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [677861967] [2024-10-12 00:47:55,258 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:55,259 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:55,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:55,269 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:55,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:55,276 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:55,296 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:55,296 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-12 00:47:55,296 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-12 00:47:55,297 INFO L87 Difference]: Start difference. First operand 42129 states and 77917 transitions. cyclomatic complexity: 35974 Second operand has 3 states, 3 states have (on average 24.333333333333332) internal successors, (73), 2 states have internal predecessors, (73), 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) [2024-10-12 00:47:56,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:47:56,354 INFO L93 Difference]: Finished difference Result 71217 states and 131297 transitions. [2024-10-12 00:47:56,355 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 71217 states and 131297 transitions. [2024-10-12 00:47:57,148 INFO L131 ngComponentsAnalysis]: Automaton has 290 accepting balls. 21878 [2024-10-12 00:47:57,365 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 71217 states to 71217 states and 131297 transitions. [2024-10-12 00:47:57,365 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 70999 [2024-10-12 00:47:57,422 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 70999 [2024-10-12 00:47:57,422 INFO L73 IsDeterministic]: Start isDeterministic. Operand 71217 states and 131297 transitions. [2024-10-12 00:47:57,427 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:47:57,428 INFO L218 hiAutomatonCegarLoop]: Abstraction has 71217 states and 131297 transitions. [2024-10-12 00:47:57,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71217 states and 131297 transitions. [2024-10-12 00:47:58,387 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71217 to 71213. [2024-10-12 00:47:58,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71213 states, 71213 states have (on average 1.8436661845449567) internal successors, (131293), 71212 states have internal predecessors, (131293), 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) [2024-10-12 00:47:58,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71213 states to 71213 states and 131293 transitions. [2024-10-12 00:47:58,609 INFO L240 hiAutomatonCegarLoop]: Abstraction has 71213 states and 131293 transitions. [2024-10-12 00:47:58,609 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-12 00:47:58,609 INFO L425 stractBuchiCegarLoop]: Abstraction has 71213 states and 131293 transitions. [2024-10-12 00:47:58,610 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-10-12 00:47:58,610 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 71213 states and 131293 transitions. [2024-10-12 00:47:58,851 INFO L131 ngComponentsAnalysis]: Automaton has 290 accepting balls. 21878 [2024-10-12 00:47:58,851 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:47:58,851 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:47:58,852 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:47:58,852 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:47:58,852 INFO L745 eck$LassoCheckResult]: Stem: 801460#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 801067#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 801068#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 810139#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 806815#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 806299#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 806300#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 798097#L95 assume !(0 == getOrigin_~person#1); 794751#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 794752#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 798023#L530 assume !(0 == initPersonOnFloor_~floor#1); 808685#L557 assume !(1 == initPersonOnFloor_~floor#1); 796542#L584 assume !(2 == initPersonOnFloor_~floor#1); 796543#L611 assume 3 == initPersonOnFloor_~floor#1; 807387#L612 assume !(0 == initPersonOnFloor_~person#1); 807388#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 793254#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 809056#L322 assume !(0 == callOnFloor_~floorID#1); 793634#L325 assume !(1 == callOnFloor_~floorID#1); 793635#L328 assume !(2 == callOnFloor_~floorID#1); 793484#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 793485#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 807019#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 807020#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 793331#L95-1 assume !(0 == getOrigin_~person#1); 793332#L99-1 assume !(1 == getOrigin_~person#1); 804697#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 806612#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 804417#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 804418#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 809657#L584-1 assume 2 == initPersonOnFloor_~floor#1; 806668#L585-2 assume !(0 == initPersonOnFloor_~person#1); 802377#L588-2 assume !(1 == initPersonOnFloor_~person#1); 802378#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 796558#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 810611#L322-2 assume !(0 == callOnFloor_~floorID#1); 810610#L325-2 assume !(1 == callOnFloor_~floorID#1); 810609#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 800630#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 799129#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 799130#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 804172#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 804173#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 808732#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 798091#L2587 assume 0 != timeShift_~tmp~24#1; 798092#L2588 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 802593#L2309 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 799240#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 799241#L1645 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 801745#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 793755#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 793756#L2456 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 796277#L2547 assume 1 == ~doorState~0;~doorState~0 := 0; 796278#L2547-2 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 810231#L2212 assume !(0 != ~floorButtons_0~0); 807389#L2216 assume !(0 != ~floorButtons_1~0); 803862#L2220 assume 0 != ~floorButtons_2~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 801409#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 806194#L2185 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 806195#L1832-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 798315#L2001-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 794087#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 794315#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 794156#L2555 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 794158#L2247 assume !(1 == ~currentHeading~0); 803525#L2257 assume !(0 == ~currentFloorID~0); 801341#L2257-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 801342#L2263-1 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 804299#L2564-2 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 810438#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 810425#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 810426#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 810437#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 810550#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 810551#L2877-2 [2024-10-12 00:47:58,853 INFO L747 eck$LassoCheckResult]: Loop: 810551#L2877-2 assume !false; 810548#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 810549#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 810578#L2886-2 assume !false; 810573#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 810572#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 810551#L2877-2 [2024-10-12 00:47:58,853 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:58,853 INFO L85 PathProgramCache]: Analyzing trace with hash 764060336, now seen corresponding path program 1 times [2024-10-12 00:47:58,854 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:58,854 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [770927593] [2024-10-12 00:47:58,854 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:58,854 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:58,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:47:58,927 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:47:58,927 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:47:58,927 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [770927593] [2024-10-12 00:47:58,928 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [770927593] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:47:58,928 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:47:58,928 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-10-12 00:47:58,928 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1973724984] [2024-10-12 00:47:58,928 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:47:58,929 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:47:58,929 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:47:58,929 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 13 times [2024-10-12 00:47:58,929 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:47:58,930 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [970204048] [2024-10-12 00:47:58,930 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:47:58,930 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:47:58,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:58,946 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:47:58,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:47:58,953 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:47:58,973 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:47:58,974 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-12 00:47:58,974 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-12 00:47:58,974 INFO L87 Difference]: Start difference. First operand 71213 states and 131293 transitions. cyclomatic complexity: 60382 Second operand has 3 states, 3 states have (on average 24.666666666666668) internal successors, (74), 2 states have internal predecessors, (74), 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) [2024-10-12 00:48:01,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-12 00:48:01,146 INFO L93 Difference]: Finished difference Result 128975 states and 237167 transitions. [2024-10-12 00:48:01,146 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 128975 states and 237167 transitions. [2024-10-12 00:48:01,623 INFO L131 ngComponentsAnalysis]: Automaton has 514 accepting balls. 39834 [2024-10-12 00:48:02,679 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 128975 states to 128975 states and 237167 transitions. [2024-10-12 00:48:02,680 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 128625 [2024-10-12 00:48:02,758 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 128625 [2024-10-12 00:48:02,758 INFO L73 IsDeterministic]: Start isDeterministic. Operand 128975 states and 237167 transitions. [2024-10-12 00:48:02,759 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-12 00:48:02,759 INFO L218 hiAutomatonCegarLoop]: Abstraction has 128975 states and 237167 transitions. [2024-10-12 00:48:02,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128975 states and 237167 transitions. [2024-10-12 00:48:04,181 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128975 to 128967. [2024-10-12 00:48:04,302 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128967 states, 128967 states have (on average 1.8389122798855522) internal successors, (237159), 128966 states have internal predecessors, (237159), 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) [2024-10-12 00:48:04,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128967 states to 128967 states and 237159 transitions. [2024-10-12 00:48:04,571 INFO L240 hiAutomatonCegarLoop]: Abstraction has 128967 states and 237159 transitions. [2024-10-12 00:48:04,571 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-12 00:48:04,571 INFO L425 stractBuchiCegarLoop]: Abstraction has 128967 states and 237159 transitions. [2024-10-12 00:48:04,572 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-10-12 00:48:04,572 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 128967 states and 237159 transitions. [2024-10-12 00:48:04,918 INFO L131 ngComponentsAnalysis]: Automaton has 514 accepting balls. 39834 [2024-10-12 00:48:04,918 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-12 00:48:04,918 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-12 00:48:04,919 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-12 00:48:04,919 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-12 00:48:04,919 INFO L745 eck$LassoCheckResult]: Stem: 1001673#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 1001284#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 1001285#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 1010432#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 1007070#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 1006544#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 1006545#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 998292#L95 assume !(0 == getOrigin_~person#1); 994936#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 994937#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 998220#L530 assume !(0 == initPersonOnFloor_~floor#1); 1008949#L557 assume !(1 == initPersonOnFloor_~floor#1); 996727#L584 assume !(2 == initPersonOnFloor_~floor#1); 996728#L611 assume 3 == initPersonOnFloor_~floor#1; 1007640#L612 assume !(0 == initPersonOnFloor_~person#1); 1007641#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 993448#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 1009327#L322 assume !(0 == callOnFloor_~floorID#1); 993827#L325 assume !(1 == callOnFloor_~floorID#1); 993828#L328 assume !(2 == callOnFloor_~floorID#1); 993678#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 993679#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 1007279#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 1007280#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 993525#L95-1 assume !(0 == getOrigin_~person#1); 993526#L99-1 assume !(1 == getOrigin_~person#1); 1004934#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 1006865#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 1004648#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 1004649#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 1009970#L584-1 assume 2 == initPersonOnFloor_~floor#1; 1006920#L585-2 assume !(0 == initPersonOnFloor_~person#1); 1002587#L588-2 assume !(1 == initPersonOnFloor_~person#1); 1002588#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 996741#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 1010931#L322-2 assume !(0 == callOnFloor_~floorID#1); 1010930#L325-2 assume !(1 == callOnFloor_~floorID#1); 1010929#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 1000841#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 999336#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 999337#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 1004405#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 1004406#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 1009000#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 998286#L2587 assume 0 != timeShift_~tmp~24#1; 998287#L2588 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 1002809#L2309 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 999448#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 999449#L1645 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 1001962#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 993948#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 993949#L2456 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 996464#L2547 assume 1 == ~doorState~0;~doorState~0 := 0; 996465#L2547-2 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 1010522#L2212 assume !(0 != ~floorButtons_0~0); 1007642#L2216 assume !(0 != ~floorButtons_1~0); 1004086#L2220 assume !(0 != ~floorButtons_2~0); 1004087#L2224 assume 0 != ~floorButtons_3~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 1001628#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 1006442#L2185 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 1006443#L1832-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 998509#L2001-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 994277#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 994505#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 994346#L2555 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 994348#L2247 assume !(1 == ~currentHeading~0); 1003744#L2257 assume !(0 == ~currentFloorID~0); 1001560#L2257-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 1001561#L2263-1 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 1004531#L2564-2 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 1010748#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 1010735#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 1010736#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 1010747#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 1010824#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 1010825#L2877-2 [2024-10-12 00:48:04,919 INFO L747 eck$LassoCheckResult]: Loop: 1010825#L2877-2 assume !false; 1010822#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 1010823#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 1010836#L2886-2 assume !false; 1010834#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 1010835#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 1010825#L2877-2 [2024-10-12 00:48:04,919 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:48:04,919 INFO L85 PathProgramCache]: Analyzing trace with hash -1057390312, now seen corresponding path program 1 times [2024-10-12 00:48:04,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:48:04,920 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [400302886] [2024-10-12 00:48:04,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:48:04,920 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:48:04,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-12 00:48:04,978 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-12 00:48:04,978 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-12 00:48:04,979 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [400302886] [2024-10-12 00:48:04,979 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [400302886] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-12 00:48:04,979 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-12 00:48:04,979 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-10-12 00:48:04,979 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [314688656] [2024-10-12 00:48:04,979 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-12 00:48:04,980 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-12 00:48:04,980 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-12 00:48:04,980 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 14 times [2024-10-12 00:48:04,980 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-12 00:48:04,980 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [853781328] [2024-10-12 00:48:04,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-12 00:48:04,981 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-12 00:48:04,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:48:04,991 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-12 00:48:04,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-12 00:48:04,998 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-12 00:48:05,017 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-12 00:48:05,018 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-12 00:48:05,018 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-12 00:48:05,018 INFO L87 Difference]: Start difference. First operand 128967 states and 237159 transitions. cyclomatic complexity: 108726 Second operand has 3 states, 3 states have (on average 25.0) internal successors, (75), 2 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)