./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_product24.cil.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version a046e57d Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product24.cil.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 89950477a2818e2be847e3014c0e2f9e906834037b4e328723302699ed4d9564 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.dk.eval-mul-div-a046e57-m [2024-10-13 17:29:11,442 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-13 17:29:11,501 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-10-13 17:29:11,507 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-13 17:29:11,508 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-13 17:29:11,532 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-13 17:29:11,534 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-13 17:29:11,535 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-13 17:29:11,535 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-13 17:29:11,537 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-13 17:29:11,537 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-13 17:29:11,538 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-13 17:29:11,538 INFO L153 SettingsManager]: * Use SBE=true [2024-10-13 17:29:11,541 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-10-13 17:29:11,541 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-10-13 17:29:11,541 INFO L153 SettingsManager]: * Use old map elimination=false [2024-10-13 17:29:11,541 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-10-13 17:29:11,541 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-10-13 17:29:11,542 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-10-13 17:29:11,542 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-13 17:29:11,542 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-10-13 17:29:11,543 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-13 17:29:11,543 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-13 17:29:11,543 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-13 17:29:11,543 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-13 17:29:11,543 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-10-13 17:29:11,543 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-10-13 17:29:11,544 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-10-13 17:29:11,544 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-13 17:29:11,544 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-10-13 17:29:11,544 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-13 17:29:11,544 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-13 17:29:11,545 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-10-13 17:29:11,545 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-13 17:29:11,545 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-13 17:29:11,546 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-13 17:29:11,546 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-13 17:29:11,547 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-13 17:29:11,547 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-10-13 17:29:11,547 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/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/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 -> 89950477a2818e2be847e3014c0e2f9e906834037b4e328723302699ed4d9564 [2024-10-13 17:29:11,731 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-13 17:29:11,747 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-13 17:29:11,749 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-13 17:29:11,750 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-13 17:29:11,750 INFO L274 PluginConnector]: CDTParser initialized [2024-10-13 17:29:11,751 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product24.cil.c [2024-10-13 17:29:13,097 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-13 17:29:13,351 INFO L384 CDTParser]: Found 1 translation units. [2024-10-13 17:29:13,352 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product24.cil.c [2024-10-13 17:29:13,369 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d785020a6/ff28399a82e64e6b9e7cc25f22f08e39/FLAG078569b8e [2024-10-13 17:29:13,380 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d785020a6/ff28399a82e64e6b9e7cc25f22f08e39 [2024-10-13 17:29:13,382 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-13 17:29:13,383 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-13 17:29:13,386 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-13 17:29:13,386 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-13 17:29:13,394 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-13 17:29:13,395 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.10 05:29:13" (1/1) ... [2024-10-13 17:29:13,399 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@39781b3b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:13, skipping insertion in model container [2024-10-13 17:29:13,400 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.10 05:29:13" (1/1) ... [2024-10-13 17:29:13,452 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-13 17:29:13,897 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-13 17:29:13,906 INFO L200 MainTranslator]: Completed pre-run [2024-10-13 17:29:13,913 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"libacc.i","") [48] [2024-10-13 17:29:13,915 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"scenario.i","") [414] [2024-10-13 17:29:13,915 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Elevator.i","") [434] [2024-10-13 17:29:13,915 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Test.i","") [2095] [2024-10-13 17:29:13,915 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"wsllib_check.i","") [2449] [2024-10-13 17:29:13,916 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"UnitTests.i","") [2458] [2024-10-13 17:29:13,916 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Floor.i","") [2549] [2024-10-13 17:29:13,916 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Specification13_spec.i","") [3210] [2024-10-13 17:29:13,916 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Person.i","") [3299] [2024-10-13 17:29:13,916 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"featureselect.i","") [3417] [2024-10-13 17:29:13,997 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-13 17:29:14,022 INFO L204 MainTranslator]: Completed translation [2024-10-13 17:29:14,023 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14 WrapperNode [2024-10-13 17:29:14,023 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-13 17:29:14,024 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-13 17:29:14,024 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-13 17:29:14,024 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-13 17:29:14,030 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:14,057 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:14,706 INFO L138 Inliner]: procedures = 96, calls = 353, calls flagged for inlining = 205, calls inlined = 1945, statements flattened = 67293 [2024-10-13 17:29:14,707 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-13 17:29:14,707 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-13 17:29:14,707 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-13 17:29:14,707 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-13 17:29:14,716 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:14,716 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:14,853 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:15,071 INFO L175 MemorySlicer]: Split 81 memory accesses to 20 slices as follows [2, 4, 4, 4, 2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4]. 9 percent of accesses are in the largest equivalence class. The 81 initializations are split as follows [2, 4, 4, 4, 2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4]. 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-13 17:29:15,071 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:15,072 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:15,326 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:15,705 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:15,748 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:15,932 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:16,045 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-13 17:29:16,047 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-13 17:29:16,047 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-13 17:29:16,047 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-13 17:29:16,048 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (1/1) ... [2024-10-13 17:29:16,052 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:16,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:16,076 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:16,079 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-10-13 17:29:16,112 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-13 17:29:16,113 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-10-13 17:29:16,113 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#6 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#7 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#8 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#9 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#10 [2024-10-13 17:29:16,114 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#11 [2024-10-13 17:29:16,115 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#12 [2024-10-13 17:29:16,115 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#13 [2024-10-13 17:29:16,115 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#14 [2024-10-13 17:29:16,115 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#15 [2024-10-13 17:29:16,115 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#16 [2024-10-13 17:29:16,115 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#17 [2024-10-13 17:29:16,115 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#18 [2024-10-13 17:29:16,116 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#19 [2024-10-13 17:29:16,116 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-13 17:29:16,116 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-13 17:29:16,277 INFO L238 CfgBuilder]: Building ICFG [2024-10-13 17:29:16,279 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-13 17:29:36,884 INFO L? ?]: Removed 29662 outVars from TransFormulas that were not future-live. [2024-10-13 17:29:36,885 INFO L287 CfgBuilder]: Performing block encoding [2024-10-13 17:29:37,070 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-13 17:29:37,071 INFO L314 CfgBuilder]: Removed 61 assume(true) statements. [2024-10-13 17:29:37,071 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.10 05:29:37 BoogieIcfgContainer [2024-10-13 17:29:37,071 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-13 17:29:37,072 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-10-13 17:29:37,072 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-10-13 17:29:37,075 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-10-13 17:29:37,076 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-13 17:29:37,076 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 13.10 05:29:13" (1/3) ... [2024-10-13 17:29:37,077 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@1ecd1aca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 13.10 05:29:37, skipping insertion in model container [2024-10-13 17:29:37,077 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-13 17:29:37,077 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.10 05:29:14" (2/3) ... [2024-10-13 17:29:37,077 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@1ecd1aca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 13.10 05:29:37, skipping insertion in model container [2024-10-13 17:29:37,077 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-13 17:29:37,078 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.10 05:29:37" (3/3) ... [2024-10-13 17:29:37,079 INFO L332 chiAutomizerObserver]: Analyzing ICFG elevator_spec13_product24.cil.c [2024-10-13 17:29:37,307 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-10-13 17:29:37,307 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-10-13 17:29:37,307 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-10-13 17:29:37,307 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-10-13 17:29:37,308 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-10-13 17:29:37,308 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-10-13 17:29:37,308 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-10-13 17:29:37,308 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-10-13 17:29:37,356 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17952 states, 17951 states have (on average 1.8770542031084618) internal successors, (33695), 17951 states have internal predecessors, (33695), 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-13 17:29:37,758 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:37,759 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:37,759 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:37,769 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-13 17:29:37,769 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-10-13 17:29:37,769 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-10-13 17:29:37,807 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17952 states, 17951 states have (on average 1.8770542031084618) internal successors, (33695), 17951 states have internal predecessors, (33695), 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-13 17:29:37,972 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:37,972 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:37,972 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:37,975 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-13 17:29:37,975 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-10-13 17:29:37,983 INFO L745 eck$LassoCheckResult]: Stem: 4595#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 4332#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 16533#select_helpers_returnLabel#1true assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 16183#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 9548#valid_product_returnLabel#1true main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 17091#L2436true assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 10378#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 10939#L3343true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 2383#getOrigin_returnLabel#1true aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 10938#L2903true assume 0 == initPersonOnFloor_~floor#1; 5076#L2904true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 12188#L3011-1true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 4422#L2695true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 8135#L2707-2true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 9847#initPersonOnFloor_returnLabel#1true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 16121#aliceCall_returnLabel#1true havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 17518#L3343-1true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 9265#getOrigin_returnLabel#2true angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 4650#L2903-1true assume 0 == initPersonOnFloor_~floor#1; 1145#L2904-2true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 2951#L3011-3true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 11549#L2695-2true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 17877#L2707-5true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 3127#initPersonOnFloor_returnLabel#2true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 7388#angelinaCall_returnLabel#1true havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 6825#getCurrentHeading_returnLabel#1true __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 12422#__utac_acc__Specification13_spec__1_returnLabel#1true havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 14147#areDoorsOpen_returnLabel#1true timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 17002#L1702true assume 0 != timeShift_~tmp~16#1; 8562#L1703true assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 3738#L1702-1true assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 1562#L3236true assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 7801#L3237true 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 17337#L1922true assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~0#1 := 0;existInLiftCallsInDirection_~i~0#1 := 1 + ~currentFloorID~0; 13701#L1926-2true [2024-10-13 17:29:37,984 INFO L747 eck$LassoCheckResult]: Loop: 13701#L1926-2true assume !false; 17211#L1927true assume existInLiftCallsInDirection_~i~0#1 < 5; 17543#L1928true assume !(0 == existInLiftCallsInDirection_~i~0#1); 14213#$Ultimate##7080true assume !(1 == existInLiftCallsInDirection_~i~0#1); 10820#$Ultimate##7084true assume !(2 == existInLiftCallsInDirection_~i~0#1); 3881#$Ultimate##7088true assume !(3 == existInLiftCallsInDirection_~i~0#1); 10072#$Ultimate##7092true assume !(4 == existInLiftCallsInDirection_~i~0#1); 13134#L1969-1true existInLiftCallsInDirection_~i~0#1 := 1 + existInLiftCallsInDirection_~i~0#1; 13701#L1926-2true [2024-10-13 17:29:37,991 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:37,993 INFO L85 PathProgramCache]: Analyzing trace with hash -1530792437, now seen corresponding path program 1 times [2024-10-13 17:29:38,001 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:38,003 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1197788718] [2024-10-13 17:29:38,003 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:38,003 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:38,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:38,361 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-13 17:29:38,362 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:38,362 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1197788718] [2024-10-13 17:29:38,363 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1197788718] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:38,363 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:38,363 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-13 17:29:38,364 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [518326937] [2024-10-13 17:29:38,365 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:38,368 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:38,370 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:38,370 INFO L85 PathProgramCache]: Analyzing trace with hash 629105533, now seen corresponding path program 1 times [2024-10-13 17:29:38,370 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:38,370 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1078632314] [2024-10-13 17:29:38,370 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:38,371 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:38,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:38,391 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:38,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:38,422 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:38,471 INFO L204 LassoAnalysis]: Preferences: [2024-10-13 17:29:38,472 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-13 17:29:38,472 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-13 17:29:38,472 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-13 17:29:38,472 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-10-13 17:29:38,472 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:38,472 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-13 17:29:38,472 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-13 17:29:38,473 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product24.cil.c_Iteration1_Loop [2024-10-13 17:29:38,473 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-13 17:29:38,473 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-13 17:29:38,488 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:38,564 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-13 17:29:38,564 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-10-13 17:29:38,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:38,569 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:38,571 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:38,577 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2024-10-13 17:29:38,580 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-10-13 17:29:38,580 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-13 17:29:38,609 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2024-10-13 17:29:38,613 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:38,614 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:38,619 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:38,620 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2024-10-13 17:29:38,624 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-10-13 17:29:38,624 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-13 17:29:38,651 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-10-13 17:29:38,657 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2024-10-13 17:29:38,658 INFO L204 LassoAnalysis]: Preferences: [2024-10-13 17:29:38,658 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-13 17:29:38,658 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-13 17:29:38,658 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-13 17:29:38,659 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-10-13 17:29:38,659 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:38,659 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-13 17:29:38,659 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-13 17:29:38,659 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product24.cil.c_Iteration1_Loop [2024-10-13 17:29:38,659 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-13 17:29:38,659 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-13 17:29:38,660 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:38,702 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-13 17:29:38,705 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-10-13 17:29:38,706 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:38,706 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:38,708 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:38,709 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2024-10-13 17:29:38,710 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-13 17:29:38,720 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-10-13 17:29:38,720 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-10-13 17:29:38,721 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-10-13 17:29:38,721 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-10-13 17:29:38,721 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-10-13 17:29:38,723 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-10-13 17:29:38,723 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-10-13 17:29:38,726 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-10-13 17:29:38,730 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2024-10-13 17:29:38,730 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2024-10-13 17:29:38,731 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:38,731 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:38,736 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:38,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2024-10-13 17:29:38,744 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-10-13 17:29:38,744 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-10-13 17:29:38,745 INFO L474 LassoAnalysis]: Proved termination. [2024-10-13 17:29:38,745 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~0#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~0#1 Supporting invariants [] [2024-10-13 17:29:38,759 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2024-10-13 17:29:38,762 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-10-13 17:29:38,796 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:38,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:38,927 INFO L255 TraceCheckSpWp]: Trace formula consists of 541 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-10-13 17:29:38,929 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-13 17:29:39,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:39,004 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-10-13 17:29:39,004 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-13 17:29:39,145 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-13 17:29:39,206 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-13 17:29:39,245 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 17952 states, 17951 states have (on average 1.8770542031084618) internal successors, (33695), 17951 states have internal predecessors, (33695), 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-13 17:29:39,821 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Ended with exit code 0 [2024-10-13 17:29:40,995 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 17952 states, 17951 states have (on average 1.8770542031084618) internal successors, (33695), 17951 states have internal predecessors, (33695), 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 46798 states and 87780 transitions. Complement of second has 18 states. [2024-10-13 17:29:40,998 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-13 17:29:41,002 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-13 17:29:41,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 60757 transitions. [2024-10-13 17:29:41,058 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60757 transitions. Stem has 34 letters. Loop has 8 letters. [2024-10-13 17:29:41,059 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:41,059 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60757 transitions. Stem has 42 letters. Loop has 8 letters. [2024-10-13 17:29:41,060 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:41,060 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60757 transitions. Stem has 34 letters. Loop has 16 letters. [2024-10-13 17:29:41,060 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:41,062 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46798 states and 87780 transitions. [2024-10-13 17:29:41,340 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8070 [2024-10-13 17:29:41,514 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46798 states to 32299 states and 60501 transitions. [2024-10-13 17:29:41,515 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32269 [2024-10-13 17:29:41,552 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32270 [2024-10-13 17:29:41,553 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32299 states and 60501 transitions. [2024-10-13 17:29:41,554 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:41,555 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32299 states and 60501 transitions. [2024-10-13 17:29:41,609 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32299 states and 60501 transitions. [2024-10-13 17:29:42,389 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32299 to 32273. [2024-10-13 17:29:42,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32273 states, 32273 states have (on average 1.8734545905245872) internal successors, (60462), 32272 states have internal predecessors, (60462), 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-13 17:29:42,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32273 states to 32273 states and 60462 transitions. [2024-10-13 17:29:42,516 INFO L240 hiAutomatonCegarLoop]: Abstraction has 32273 states and 60462 transitions. [2024-10-13 17:29:42,516 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:42,519 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-13 17:29:42,520 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-13 17:29:42,521 INFO L87 Difference]: Start difference. First operand 32273 states and 60462 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-13 17:29:43,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:43,328 INFO L93 Difference]: Finished difference Result 32255 states and 60331 transitions. [2024-10-13 17:29:43,328 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32255 states and 60331 transitions. [2024-10-13 17:29:43,754 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8054 [2024-10-13 17:29:43,873 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32255 states to 32246 states and 60322 transitions. [2024-10-13 17:29:43,874 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32227 [2024-10-13 17:29:43,908 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32227 [2024-10-13 17:29:43,908 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32246 states and 60322 transitions. [2024-10-13 17:29:43,909 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:43,909 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32246 states and 60322 transitions. [2024-10-13 17:29:43,945 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32246 states and 60322 transitions. [2024-10-13 17:29:44,167 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32246 to 17939. [2024-10-13 17:29:44,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17939 states, 17939 states have (on average 1.8707285801884164) internal successors, (33559), 17938 states have internal predecessors, (33559), 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-13 17:29:44,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17939 states to 17939 states and 33559 transitions. [2024-10-13 17:29:44,221 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17939 states and 33559 transitions. [2024-10-13 17:29:44,225 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-13 17:29:44,226 INFO L425 stractBuchiCegarLoop]: Abstraction has 17939 states and 33559 transitions. [2024-10-13 17:29:44,226 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-10-13 17:29:44,226 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17939 states and 33559 transitions. [2024-10-13 17:29:44,273 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4074 [2024-10-13 17:29:44,273 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:44,274 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:44,274 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-13 17:29:44,274 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-10-13 17:29:44,275 INFO L745 eck$LassoCheckResult]: Stem: 138372#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 138008#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 138009#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 147238#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 144059#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 144060#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 144666#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 144667#L3343 assume !(0 == getOrigin_~person#1); 145029#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 134588#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 134710#L2903 assume 0 == initPersonOnFloor_~floor#1; 139062#L2904 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 132204#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 138128#L2695 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 137082#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 142838#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 144281#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 147224#L3343-1 assume !(0 == getOrigin_~person#1); 147379#L3347-1 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 132359#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 138454#L2903-1 assume 0 == initPersonOnFloor_~floor#1; 132211#L2904-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 129489#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 135751#L2695-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 143365#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 136052#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 136053#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 141393#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 141394#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 145901#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 146684#L1702 assume 0 != timeShift_~tmp~16#1; 143215#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 134595#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 133096#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 133097#L3237 assume !(1 == ~prevDir~0); 131976#L3263 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 131978#L1922-2 assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~0#1 := 0;existInLiftCallsInDirection_~i~0#1 := 1 + ~currentFloorID~0; 143609#L1926-8 [2024-10-13 17:29:44,275 INFO L747 eck$LassoCheckResult]: Loop: 143609#L1926-8 assume !false; 144606#L1927-2 assume existInLiftCallsInDirection_~i~0#1 < 5; 131323#L1928-2 assume !(0 == existInLiftCallsInDirection_~i~0#1); 131325#$Ultimate##7236 assume !(1 == existInLiftCallsInDirection_~i~0#1); 145957#$Ultimate##7240 assume !(2 == existInLiftCallsInDirection_~i~0#1); 146354#$Ultimate##7244 assume !(3 == existInLiftCallsInDirection_~i~0#1); 131004#$Ultimate##7248 assume !(4 == existInLiftCallsInDirection_~i~0#1); 131006#L1969-5 existInLiftCallsInDirection_~i~0#1 := 1 + existInLiftCallsInDirection_~i~0#1; 143609#L1926-8 [2024-10-13 17:29:44,276 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:44,276 INFO L85 PathProgramCache]: Analyzing trace with hash 1862529426, now seen corresponding path program 1 times [2024-10-13 17:29:44,276 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:44,276 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [698151469] [2024-10-13 17:29:44,276 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:44,277 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:44,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:44,382 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-13 17:29:44,383 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:44,383 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [698151469] [2024-10-13 17:29:44,383 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [698151469] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:44,383 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:44,383 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-13 17:29:44,383 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2010096496] [2024-10-13 17:29:44,383 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:44,383 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:44,384 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:44,384 INFO L85 PathProgramCache]: Analyzing trace with hash -563795075, now seen corresponding path program 1 times [2024-10-13 17:29:44,384 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:44,384 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1326253780] [2024-10-13 17:29:44,384 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:44,384 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:44,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:44,398 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:44,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:44,411 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:44,443 INFO L204 LassoAnalysis]: Preferences: [2024-10-13 17:29:44,443 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-13 17:29:44,443 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-13 17:29:44,443 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-13 17:29:44,443 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-10-13 17:29:44,443 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:44,443 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-13 17:29:44,444 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-13 17:29:44,444 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product24.cil.c_Iteration2_Loop [2024-10-13 17:29:44,444 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-13 17:29:44,444 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-13 17:29:44,444 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:44,482 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-13 17:29:44,482 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-10-13 17:29:44,482 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:44,482 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:44,485 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:44,486 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2024-10-13 17:29:44,826 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-10-13 17:29:44,826 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-13 17:29:44,863 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2024-10-13 17:29:44,865 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:44,866 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:44,870 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:44,873 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2024-10-13 17:29:44,874 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-10-13 17:29:44,874 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-13 17:29:44,905 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-10-13 17:29:44,913 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Ended with exit code 0 [2024-10-13 17:29:44,914 INFO L204 LassoAnalysis]: Preferences: [2024-10-13 17:29:44,917 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-13 17:29:44,917 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-13 17:29:44,917 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-13 17:29:44,917 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-10-13 17:29:44,917 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:44,917 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-13 17:29:44,917 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-13 17:29:44,917 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product24.cil.c_Iteration2_Loop [2024-10-13 17:29:44,918 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-13 17:29:44,918 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-13 17:29:44,918 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:44,957 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-13 17:29:44,957 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-10-13 17:29:44,957 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:44,957 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:44,958 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:44,963 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2024-10-13 17:29:44,963 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-13 17:29:44,973 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-10-13 17:29:44,973 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-10-13 17:29:44,973 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-10-13 17:29:44,973 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-10-13 17:29:44,973 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-10-13 17:29:44,974 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-10-13 17:29:44,974 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-10-13 17:29:44,978 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-10-13 17:29:44,980 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2024-10-13 17:29:44,980 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2024-10-13 17:29:44,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:44,980 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:44,984 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:44,991 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2024-10-13 17:29:44,992 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-10-13 17:29:44,992 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-10-13 17:29:44,992 INFO L474 LassoAnalysis]: Proved termination. [2024-10-13 17:29:44,992 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~0#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~0#1 Supporting invariants [] [2024-10-13 17:29:45,003 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2024-10-13 17:29:45,004 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-10-13 17:29:45,014 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:45,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:45,084 INFO L255 TraceCheckSpWp]: Trace formula consists of 544 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-10-13 17:29:45,085 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-13 17:29:45,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:45,128 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-10-13 17:29:45,128 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-13 17:29:45,251 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-13 17:29:45,252 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-13 17:29:45,252 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 17939 states and 33559 transitions. cyclomatic complexity: 15654 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-13 17:29:45,802 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2024-10-13 17:29:46,204 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 17939 states and 33559 transitions. cyclomatic complexity: 15654. 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 32302 states and 60405 transitions. Complement of second has 17 states. [2024-10-13 17:29:46,205 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-13 17:29:46,206 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-13 17:29:46,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 33546 transitions. [2024-10-13 17:29:46,241 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33546 transitions. Stem has 37 letters. Loop has 8 letters. [2024-10-13 17:29:46,241 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:46,241 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33546 transitions. Stem has 45 letters. Loop has 8 letters. [2024-10-13 17:29:46,242 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:46,242 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33546 transitions. Stem has 37 letters. Loop has 16 letters. [2024-10-13 17:29:46,242 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:46,242 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32302 states and 60405 transitions. [2024-10-13 17:29:46,401 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8068 [2024-10-13 17:29:46,517 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32302 states to 32296 states and 60399 transitions. [2024-10-13 17:29:46,517 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32247 [2024-10-13 17:29:46,563 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32248 [2024-10-13 17:29:46,564 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32296 states and 60399 transitions. [2024-10-13 17:29:46,564 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:46,564 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32296 states and 60399 transitions. [2024-10-13 17:29:46,857 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32296 states and 60399 transitions. [2024-10-13 17:29:47,083 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32296 to 17963. [2024-10-13 17:29:47,109 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17963 states, 17963 states have (on average 1.8703445972276347) internal successors, (33597), 17962 states have internal predecessors, (33597), 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-13 17:29:47,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17963 states to 17963 states and 33597 transitions. [2024-10-13 17:29:47,142 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17963 states and 33597 transitions. [2024-10-13 17:29:47,142 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:47,143 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-13 17:29:47,143 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-13 17:29:47,143 INFO L87 Difference]: Start difference. First operand 17963 states and 33597 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-13 17:29:47,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:47,542 INFO L93 Difference]: Finished difference Result 17981 states and 33615 transitions. [2024-10-13 17:29:47,542 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17981 states and 33615 transitions. [2024-10-13 17:29:47,800 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4078 [2024-10-13 17:29:47,866 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17981 states to 17981 states and 33615 transitions. [2024-10-13 17:29:47,866 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17943 [2024-10-13 17:29:47,882 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17943 [2024-10-13 17:29:47,882 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17981 states and 33615 transitions. [2024-10-13 17:29:47,884 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:47,884 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17981 states and 33615 transitions. [2024-10-13 17:29:47,908 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17981 states and 33615 transitions. [2024-10-13 17:29:48,065 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17981 to 17978. [2024-10-13 17:29:48,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17978 states, 17978 states have (on average 1.869618422516409) internal successors, (33612), 17977 states have internal predecessors, (33612), 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-13 17:29:48,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17978 states to 17978 states and 33612 transitions. [2024-10-13 17:29:48,125 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17978 states and 33612 transitions. [2024-10-13 17:29:48,125 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-13 17:29:48,127 INFO L425 stractBuchiCegarLoop]: Abstraction has 17978 states and 33612 transitions. [2024-10-13 17:29:48,127 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-10-13 17:29:48,127 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17978 states and 33612 transitions. [2024-10-13 17:29:48,177 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4078 [2024-10-13 17:29:48,178 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:48,178 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:48,179 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-13 17:29:48,179 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-13 17:29:48,180 INFO L745 eck$LassoCheckResult]: Stem: 224741#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 224377#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 224378#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 233621#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 230436#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 230437#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 231044#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 231045#L3343 assume !(0 == getOrigin_~person#1); 231405#L3347 assume !(1 == getOrigin_~person#1); 232122#L3351 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 220956#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 233790#L2903 assume 0 == initPersonOnFloor_~floor#1; 225431#L2904 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 218572#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 224497#L2695 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 223451#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 229211#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 230658#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 233607#L3343-1 assume !(0 == getOrigin_~person#1); 233764#L3347-1 assume !(1 == getOrigin_~person#1); 218726#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 218727#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 233778#L2903-1 assume 0 == initPersonOnFloor_~floor#1; 218579#L2904-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 215852#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 222120#L2695-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 229740#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 222421#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 222422#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 227766#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 227767#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 232277#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 233066#L1702 assume 0 != timeShift_~tmp~16#1; 229590#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 220963#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 219464#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 219465#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 228870#L1922 assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~0#1 := 0;existInLiftCallsInDirection_~i~0#1 := 1 + ~currentFloorID~0; 233758#L1926-2 assume !false; 232873#L1927 [2024-10-13 17:29:48,183 INFO L747 eck$LassoCheckResult]: Loop: 232873#L1927 assume existInLiftCallsInDirection_~i~0#1 < 5; 233748#L1928 assume 0 == existInLiftCallsInDirection_~i~0#1; 233760#L1934 assume !(0 != ~floorButtons_0~0); 233761#$Ultimate##7080 assume !(1 == existInLiftCallsInDirection_~i~0#1); 231883#$Ultimate##7084 assume !(2 == existInLiftCallsInDirection_~i~0#1); 232792#$Ultimate##7088 assume !(3 == existInLiftCallsInDirection_~i~0#1); 223474#$Ultimate##7092 assume !(4 == existInLiftCallsInDirection_~i~0#1); 232651#L1969-1 existInLiftCallsInDirection_~i~0#1 := 1 + existInLiftCallsInDirection_~i~0#1; 232652#L1926-2 assume !false; 232873#L1927 [2024-10-13 17:29:48,184 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:48,184 INFO L85 PathProgramCache]: Analyzing trace with hash 1342134623, now seen corresponding path program 1 times [2024-10-13 17:29:48,184 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:48,184 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [27735015] [2024-10-13 17:29:48,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:48,185 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:48,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:48,262 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-13 17:29:48,262 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:48,262 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [27735015] [2024-10-13 17:29:48,263 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [27735015] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:48,263 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:48,263 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-10-13 17:29:48,263 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1800297348] [2024-10-13 17:29:48,263 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:48,264 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:48,264 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:48,265 INFO L85 PathProgramCache]: Analyzing trace with hash -520511543, now seen corresponding path program 1 times [2024-10-13 17:29:48,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:48,265 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1381626831] [2024-10-13 17:29:48,266 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:48,266 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:48,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:48,280 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:48,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:48,294 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:48,332 INFO L204 LassoAnalysis]: Preferences: [2024-10-13 17:29:48,333 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-13 17:29:48,333 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-13 17:29:48,333 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-13 17:29:48,333 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-10-13 17:29:48,333 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,333 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-13 17:29:48,333 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-13 17:29:48,333 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product24.cil.c_Iteration3_Loop [2024-10-13 17:29:48,334 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-13 17:29:48,334 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-13 17:29:48,334 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:48,337 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:48,375 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-13 17:29:48,375 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-10-13 17:29:48,375 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,375 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:48,378 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:48,392 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2024-10-13 17:29:48,394 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-10-13 17:29:48,394 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-13 17:29:48,413 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2024-10-13 17:29:48,413 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {~floorButtons_0~0=0} Honda state: {~floorButtons_0~0=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2024-10-13 17:29:48,430 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Ended with exit code 0 [2024-10-13 17:29:48,431 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,431 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:48,434 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:48,436 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2024-10-13 17:29:48,437 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-10-13 17:29:48,437 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-13 17:29:48,472 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Ended with exit code 0 [2024-10-13 17:29:48,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:48,475 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:48,476 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2024-10-13 17:29:48,477 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-10-13 17:29:48,477 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-10-13 17:29:48,491 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-10-13 17:29:48,503 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Ended with exit code 0 [2024-10-13 17:29:48,503 INFO L204 LassoAnalysis]: Preferences: [2024-10-13 17:29:48,503 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-10-13 17:29:48,503 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-10-13 17:29:48,503 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-10-13 17:29:48,503 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-10-13 17:29:48,503 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,503 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-10-13 17:29:48,503 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-10-13 17:29:48,503 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product24.cil.c_Iteration3_Loop [2024-10-13 17:29:48,504 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-10-13 17:29:48,504 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-10-13 17:29:48,504 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:48,509 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-10-13 17:29:48,533 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-10-13 17:29:48,533 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-10-13 17:29:48,533 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,533 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:48,534 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:48,540 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2024-10-13 17:29:48,541 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-13 17:29:48,551 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-10-13 17:29:48,551 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-10-13 17:29:48,552 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-10-13 17:29:48,552 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-10-13 17:29:48,552 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-10-13 17:29:48,553 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-10-13 17:29:48,553 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-10-13 17:29:48,557 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-10-13 17:29:48,567 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2024-10-13 17:29:48,567 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,567 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:48,570 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:48,574 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2024-10-13 17:29:48,575 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-13 17:29:48,588 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-10-13 17:29:48,588 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-10-13 17:29:48,589 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-10-13 17:29:48,589 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-10-13 17:29:48,589 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-10-13 17:29:48,590 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-10-13 17:29:48,590 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-10-13 17:29:48,591 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-10-13 17:29:48,593 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-10-13 17:29:48,593 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2024-10-13 17:29:48,594 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-13 17:29:48,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-10-13 17:29:48,595 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-13 17:29:48,598 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2024-10-13 17:29:48,598 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-10-13 17:29:48,598 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-10-13 17:29:48,598 INFO L474 LassoAnalysis]: Proved termination. [2024-10-13 17:29:48,599 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~0#1) = -2*ULTIMATE.start_existInLiftCallsInDirection_~i~0#1 + 1 Supporting invariants [] [2024-10-13 17:29:48,609 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Ended with exit code 0 [2024-10-13 17:29:48,611 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-10-13 17:29:48,635 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:48,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:48,762 INFO L255 TraceCheckSpWp]: Trace formula consists of 546 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-10-13 17:29:48,763 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-13 17:29:48,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:48,848 INFO L255 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-10-13 17:29:48,848 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-13 17:29:48,933 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-13 17:29:48,934 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2024-10-13 17:29:48,935 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 17978 states and 33612 transitions. cyclomatic complexity: 15669 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-13 17:29:49,395 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Ended with exit code 0 [2024-10-13 17:29:50,167 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 17978 states and 33612 transitions. cyclomatic complexity: 15669. 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) Result 46703 states and 87304 transitions. Complement of second has 8 states. [2024-10-13 17:29:50,167 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-10-13 17:29:50,168 INFO L82 GeneralOperation]: Start removeUnreachable. 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-13 17:29:50,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60319 transitions. [2024-10-13 17:29:50,225 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 60319 transitions. Stem has 39 letters. Loop has 9 letters. [2024-10-13 17:29:50,226 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:50,226 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 60319 transitions. Stem has 48 letters. Loop has 9 letters. [2024-10-13 17:29:50,226 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:50,226 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 60319 transitions. Stem has 39 letters. Loop has 18 letters. [2024-10-13 17:29:50,227 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-10-13 17:29:50,227 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46703 states and 87304 transitions. [2024-10-13 17:29:50,424 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8056 [2024-10-13 17:29:50,521 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46703 states to 32341 states and 60450 transitions. [2024-10-13 17:29:50,522 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32255 [2024-10-13 17:29:50,547 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32258 [2024-10-13 17:29:50,547 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32341 states and 60450 transitions. [2024-10-13 17:29:50,564 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:50,565 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32341 states and 60450 transitions. [2024-10-13 17:29:50,596 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32341 states and 60450 transitions. [2024-10-13 17:29:51,104 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32341 to 18024. [2024-10-13 17:29:51,125 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18024 states, 18024 states have (on average 1.8683422103861518) internal successors, (33675), 18023 states have internal predecessors, (33675), 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-13 17:29:51,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18024 states to 18024 states and 33675 transitions. [2024-10-13 17:29:51,162 INFO L240 hiAutomatonCegarLoop]: Abstraction has 18024 states and 33675 transitions. [2024-10-13 17:29:51,162 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:51,164 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-13 17:29:51,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-13 17:29:51,164 INFO L87 Difference]: Start difference. First operand 18024 states and 33675 transitions. 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-13 17:29:51,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:51,426 INFO L93 Difference]: Finished difference Result 17990 states and 33607 transitions. [2024-10-13 17:29:51,426 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17990 states and 33607 transitions. [2024-10-13 17:29:51,497 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:51,552 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17990 states to 17990 states and 33607 transitions. [2024-10-13 17:29:51,553 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17907 [2024-10-13 17:29:51,568 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17907 [2024-10-13 17:29:51,568 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17990 states and 33607 transitions. [2024-10-13 17:29:51,569 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:51,569 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17990 states and 33607 transitions. [2024-10-13 17:29:51,594 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17990 states and 33607 transitions. [2024-10-13 17:29:51,751 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17990 to 17990. [2024-10-13 17:29:51,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17990 states, 17990 states have (on average 1.8680933852140078) internal successors, (33607), 17989 states have internal predecessors, (33607), 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-13 17:29:51,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17990 states to 17990 states and 33607 transitions. [2024-10-13 17:29:51,804 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17990 states and 33607 transitions. [2024-10-13 17:29:51,804 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-13 17:29:51,805 INFO L425 stractBuchiCegarLoop]: Abstraction has 17990 states and 33607 transitions. [2024-10-13 17:29:51,805 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-10-13 17:29:51,805 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17990 states and 33607 transitions. [2024-10-13 17:29:51,852 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:51,853 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:51,853 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:51,854 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-13 17:29:51,854 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:51,854 INFO L745 eck$LassoCheckResult]: Stem: 325593#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 325231#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 325232#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 334460#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 331275#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 331276#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 331882#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 331883#L3343 assume !(0 == getOrigin_~person#1); 332242#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 321936#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 321937#L2903 assume !(0 == initPersonOnFloor_~floor#1); 328334#L2930 assume !(1 == initPersonOnFloor_~floor#1); 326165#L2957 assume !(2 == initPersonOnFloor_~floor#1); 326166#L2984 assume 3 == initPersonOnFloor_~floor#1; 328194#L2985 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_3~0 := 1; 319495#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 325349#L2695 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 324304#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 330053#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 331497#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 334446#L3343-1 assume !(0 == getOrigin_~person#1); 334602#L3347-1 assume !(1 == getOrigin_~person#1); 319587#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 319588#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 334626#L2903-1 assume 0 == initPersonOnFloor_~floor#1; 319439#L2904-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 316715#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 322978#L2695-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 330581#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 323279#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 323280#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 328611#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 328612#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 333114#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 333905#L1702 assume 0 != timeShift_~tmp~16#1; 330432#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 321821#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 320325#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 320326#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 329713#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 331340#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 327343#L1992-2 [2024-10-13 17:29:51,855 INFO L747 eck$LassoCheckResult]: Loop: 327343#L1992-2 assume !false; 322771#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 316849#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 316850#L2001-2 assume !false; 322294#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 327342#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 327343#L1992-2 [2024-10-13 17:29:51,855 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:51,855 INFO L85 PathProgramCache]: Analyzing trace with hash 332393644, now seen corresponding path program 1 times [2024-10-13 17:29:51,855 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:51,855 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [76408217] [2024-10-13 17:29:51,856 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:51,856 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:51,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:51,964 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-13 17:29:51,965 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:51,965 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [76408217] [2024-10-13 17:29:51,965 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [76408217] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:51,965 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:51,965 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-13 17:29:51,966 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [874067319] [2024-10-13 17:29:51,966 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:51,966 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:51,966 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:51,967 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 1 times [2024-10-13 17:29:51,967 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:51,967 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [437479810] [2024-10-13 17:29:51,967 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:51,967 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:51,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:51,980 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:51,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:51,998 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:52,017 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:52,018 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-13 17:29:52,018 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-13 17:29:52,018 INFO L87 Difference]: Start difference. First operand 17990 states and 33607 transitions. cyclomatic complexity: 15654 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-13 17:29:52,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:52,670 INFO L93 Difference]: Finished difference Result 17998 states and 33614 transitions. [2024-10-13 17:29:52,670 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17998 states and 33614 transitions. [2024-10-13 17:29:52,727 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:52,772 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17998 states to 17998 states and 33614 transitions. [2024-10-13 17:29:52,772 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17915 [2024-10-13 17:29:52,782 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17915 [2024-10-13 17:29:52,782 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17998 states and 33614 transitions. [2024-10-13 17:29:52,783 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:52,783 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17998 states and 33614 transitions. [2024-10-13 17:29:52,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17998 states and 33614 transitions. [2024-10-13 17:29:53,125 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17998 to 17990. [2024-10-13 17:29:53,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17990 states, 17990 states have (on average 1.8677598665925514) internal successors, (33601), 17989 states have internal predecessors, (33601), 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-13 17:29:53,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17990 states to 17990 states and 33601 transitions. [2024-10-13 17:29:53,458 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17990 states and 33601 transitions. [2024-10-13 17:29:53,459 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-13 17:29:53,463 INFO L425 stractBuchiCegarLoop]: Abstraction has 17990 states and 33601 transitions. [2024-10-13 17:29:53,463 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-10-13 17:29:53,463 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17990 states and 33601 transitions. [2024-10-13 17:29:53,524 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:53,525 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:53,525 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:53,527 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-13 17:29:53,527 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:53,527 INFO L745 eck$LassoCheckResult]: Stem: 361589#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 361227#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 361228#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 370456#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 367271#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 367272#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 367878#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 367879#L3343 assume !(0 == getOrigin_~person#1); 368238#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 357932#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 357933#L2903 assume !(0 == initPersonOnFloor_~floor#1); 364330#L2930 assume !(1 == initPersonOnFloor_~floor#1); 362161#L2957 assume !(2 == initPersonOnFloor_~floor#1); 362162#L2984 assume 3 == initPersonOnFloor_~floor#1; 364190#L2985 assume !(0 == initPersonOnFloor_~person#1); 367255#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 355491#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 361345#L2695 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 360300#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 366049#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 367493#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 370442#L3343-1 assume !(0 == getOrigin_~person#1); 370599#L3347-1 assume !(1 == getOrigin_~person#1); 355583#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 355584#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 370620#L2903-1 assume 0 == initPersonOnFloor_~floor#1; 355435#L2904-2 assume !(0 == initPersonOnFloor_~person#1); 353284#L2907-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 352711#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 358974#L2695-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 366577#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 359275#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 359276#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 364607#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 364608#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 369110#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 369902#L1702 assume 0 != timeShift_~tmp~16#1; 366428#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 357817#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 356321#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 356322#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 365709#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 367336#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 363339#L1992-2 [2024-10-13 17:29:53,527 INFO L747 eck$LassoCheckResult]: Loop: 363339#L1992-2 assume !false; 358767#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 352845#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 352846#L2001-2 assume !false; 358290#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 363338#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 363339#L1992-2 [2024-10-13 17:29:53,528 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:53,528 INFO L85 PathProgramCache]: Analyzing trace with hash 553838192, now seen corresponding path program 1 times [2024-10-13 17:29:53,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:53,529 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1401974130] [2024-10-13 17:29:53,529 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:53,530 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:53,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:53,599 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-13 17:29:53,600 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:53,600 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1401974130] [2024-10-13 17:29:53,600 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1401974130] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:53,600 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:53,600 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-13 17:29:53,601 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1219986627] [2024-10-13 17:29:53,601 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:53,601 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:53,601 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:53,601 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 2 times [2024-10-13 17:29:53,601 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:53,602 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1564126309] [2024-10-13 17:29:53,602 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:53,602 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:53,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:53,617 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:53,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:53,639 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:53,667 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:53,667 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-13 17:29:53,667 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-13 17:29:53,668 INFO L87 Difference]: Start difference. First operand 17990 states and 33601 transitions. cyclomatic complexity: 15648 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-13 17:29:53,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:53,947 INFO L93 Difference]: Finished difference Result 17994 states and 33604 transitions. [2024-10-13 17:29:53,948 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17994 states and 33604 transitions. [2024-10-13 17:29:54,010 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:54,060 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17994 states to 17994 states and 33604 transitions. [2024-10-13 17:29:54,060 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17911 [2024-10-13 17:29:54,073 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17911 [2024-10-13 17:29:54,073 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17994 states and 33604 transitions. [2024-10-13 17:29:54,074 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:54,074 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17994 states and 33604 transitions. [2024-10-13 17:29:54,101 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17994 states and 33604 transitions. [2024-10-13 17:29:54,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17994 to 17994. [2024-10-13 17:29:54,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17994 states, 17994 states have (on average 1.867511392686451) internal successors, (33604), 17993 states have internal predecessors, (33604), 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-13 17:29:54,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17994 states to 17994 states and 33604 transitions. [2024-10-13 17:29:54,627 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17994 states and 33604 transitions. [2024-10-13 17:29:54,627 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-13 17:29:54,627 INFO L425 stractBuchiCegarLoop]: Abstraction has 17994 states and 33604 transitions. [2024-10-13 17:29:54,628 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-10-13 17:29:54,628 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17994 states and 33604 transitions. [2024-10-13 17:29:54,687 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:54,688 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:54,688 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:54,688 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-13 17:29:54,689 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:54,689 INFO L745 eck$LassoCheckResult]: Stem: 397581#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 397219#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 397220#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 406449#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 403263#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 403264#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 403871#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 403872#L3343 assume !(0 == getOrigin_~person#1); 404232#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 393925#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 393926#L2903 assume !(0 == initPersonOnFloor_~floor#1); 400322#L2930 assume !(1 == initPersonOnFloor_~floor#1); 398153#L2957 assume !(2 == initPersonOnFloor_~floor#1); 398154#L2984 assume 3 == initPersonOnFloor_~floor#1; 400182#L2985 assume !(0 == initPersonOnFloor_~person#1); 403247#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 391483#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 397337#L2695 assume !(0 == callOnFloor_~floorID#1); 397338#L2698 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 396293#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 402041#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 403485#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 406435#L3343-1 assume !(0 == getOrigin_~person#1); 406592#L3347-1 assume !(1 == getOrigin_~person#1); 391575#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 391576#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 406616#L2903-1 assume 0 == initPersonOnFloor_~floor#1; 391427#L2904-2 assume !(0 == initPersonOnFloor_~person#1); 389275#L2907-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 389277#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 406600#L2695-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 402569#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 395268#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 395269#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 400599#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 400600#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 405104#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 405894#L1702 assume 0 != timeShift_~tmp~16#1; 402420#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 393810#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 392313#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 392314#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 401701#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 403328#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 399331#L1992-2 [2024-10-13 17:29:54,689 INFO L747 eck$LassoCheckResult]: Loop: 399331#L1992-2 assume !false; 394760#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 388836#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 388837#L2001-2 assume !false; 394283#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 399330#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 399331#L1992-2 [2024-10-13 17:29:54,689 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:54,690 INFO L85 PathProgramCache]: Analyzing trace with hash -1251686709, now seen corresponding path program 1 times [2024-10-13 17:29:54,690 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:54,690 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1792783822] [2024-10-13 17:29:54,690 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:54,690 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:54,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:54,780 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-13 17:29:54,780 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:54,780 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1792783822] [2024-10-13 17:29:54,780 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1792783822] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:54,781 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:54,781 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-13 17:29:54,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1753946675] [2024-10-13 17:29:54,781 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:54,781 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:54,782 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:54,782 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 3 times [2024-10-13 17:29:54,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:54,782 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1012656826] [2024-10-13 17:29:54,782 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:54,782 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:54,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:54,798 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:54,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:54,809 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:54,826 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:54,827 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-13 17:29:54,827 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-13 17:29:54,827 INFO L87 Difference]: Start difference. First operand 17994 states and 33604 transitions. cyclomatic complexity: 15647 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-13 17:29:55,205 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:55,205 INFO L93 Difference]: Finished difference Result 18000 states and 33609 transitions. [2024-10-13 17:29:55,205 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 18000 states and 33609 transitions. [2024-10-13 17:29:55,290 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:55,347 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 18000 states to 18000 states and 33609 transitions. [2024-10-13 17:29:55,347 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17917 [2024-10-13 17:29:55,365 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17917 [2024-10-13 17:29:55,365 INFO L73 IsDeterministic]: Start isDeterministic. Operand 18000 states and 33609 transitions. [2024-10-13 17:29:55,365 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:55,365 INFO L218 hiAutomatonCegarLoop]: Abstraction has 18000 states and 33609 transitions. [2024-10-13 17:29:55,391 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18000 states and 33609 transitions. [2024-10-13 17:29:55,589 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18000 to 18000. [2024-10-13 17:29:55,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18000 states, 18000 states have (on average 1.8671666666666666) internal successors, (33609), 17999 states have internal predecessors, (33609), 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-13 17:29:55,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18000 states to 18000 states and 33609 transitions. [2024-10-13 17:29:55,648 INFO L240 hiAutomatonCegarLoop]: Abstraction has 18000 states and 33609 transitions. [2024-10-13 17:29:55,648 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-13 17:29:55,649 INFO L425 stractBuchiCegarLoop]: Abstraction has 18000 states and 33609 transitions. [2024-10-13 17:29:55,649 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-10-13 17:29:55,650 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 18000 states and 33609 transitions. [2024-10-13 17:29:55,842 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:55,842 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:55,842 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:55,843 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-13 17:29:55,843 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:55,843 INFO L745 eck$LassoCheckResult]: Stem: 433584#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 433222#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 433223#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 442452#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 439267#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 439268#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 439875#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 439876#L3343 assume !(0 == getOrigin_~person#1); 440237#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 429926#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 429927#L2903 assume !(0 == initPersonOnFloor_~floor#1); 436326#L2930 assume !(1 == initPersonOnFloor_~floor#1); 434156#L2957 assume !(2 == initPersonOnFloor_~floor#1); 434157#L2984 assume 3 == initPersonOnFloor_~floor#1; 436186#L2985 assume !(0 == initPersonOnFloor_~person#1); 439251#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 427484#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 433340#L2695 assume !(0 == callOnFloor_~floorID#1); 433341#L2698 assume !(1 == callOnFloor_~floorID#1); 433100#L2701 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 432295#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 438045#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 439489#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 442438#L3343-1 assume !(0 == getOrigin_~person#1); 442595#L3347-1 assume !(1 == getOrigin_~person#1); 427576#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 427577#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 442620#L2903-1 assume 0 == initPersonOnFloor_~floor#1; 427428#L2904-2 assume !(0 == initPersonOnFloor_~person#1); 425276#L2907-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 425278#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 442604#L2695-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 438782#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 431270#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 431271#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 436603#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 436604#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 441108#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 441897#L1702 assume 0 != timeShift_~tmp~16#1; 438424#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 429811#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 428314#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 428315#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 437705#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 439332#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 435334#L1992-2 [2024-10-13 17:29:55,844 INFO L747 eck$LassoCheckResult]: Loop: 435334#L1992-2 assume !false; 430762#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 424837#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 424838#L2001-2 assume !false; 430284#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 435333#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 435334#L1992-2 [2024-10-13 17:29:55,844 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:55,844 INFO L85 PathProgramCache]: Analyzing trace with hash -1233284757, now seen corresponding path program 1 times [2024-10-13 17:29:55,844 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:55,844 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1908240689] [2024-10-13 17:29:55,844 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:55,844 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:55,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:55,934 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-13 17:29:55,934 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:55,938 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1908240689] [2024-10-13 17:29:55,938 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1908240689] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:55,938 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:55,938 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-13 17:29:55,938 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1174678728] [2024-10-13 17:29:55,939 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:55,939 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:55,939 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:55,939 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 4 times [2024-10-13 17:29:55,939 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:55,939 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [811179984] [2024-10-13 17:29:55,939 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:55,939 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:55,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:55,949 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:55,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:55,955 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:55,970 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:55,970 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-13 17:29:55,970 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-13 17:29:55,971 INFO L87 Difference]: Start difference. First operand 18000 states and 33609 transitions. cyclomatic complexity: 15646 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-13 17:29:56,234 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:56,235 INFO L93 Difference]: Finished difference Result 18008 states and 33616 transitions. [2024-10-13 17:29:56,235 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 18008 states and 33616 transitions. [2024-10-13 17:29:56,295 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:56,343 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 18008 states to 18008 states and 33616 transitions. [2024-10-13 17:29:56,343 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17925 [2024-10-13 17:29:56,355 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17925 [2024-10-13 17:29:56,355 INFO L73 IsDeterministic]: Start isDeterministic. Operand 18008 states and 33616 transitions. [2024-10-13 17:29:56,358 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:56,359 INFO L218 hiAutomatonCegarLoop]: Abstraction has 18008 states and 33616 transitions. [2024-10-13 17:29:56,377 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18008 states and 33616 transitions. [2024-10-13 17:29:56,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18008 to 18008. [2024-10-13 17:29:56,522 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18008 states, 18008 states have (on average 1.8667258996001777) internal successors, (33616), 18007 states have internal predecessors, (33616), 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-13 17:29:56,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18008 states to 18008 states and 33616 transitions. [2024-10-13 17:29:56,551 INFO L240 hiAutomatonCegarLoop]: Abstraction has 18008 states and 33616 transitions. [2024-10-13 17:29:56,551 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-13 17:29:56,552 INFO L425 stractBuchiCegarLoop]: Abstraction has 18008 states and 33616 transitions. [2024-10-13 17:29:56,552 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-10-13 17:29:56,552 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 18008 states and 33616 transitions. [2024-10-13 17:29:56,593 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:56,593 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:56,593 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:56,593 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-13 17:29:56,593 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:56,594 INFO L745 eck$LassoCheckResult]: Stem: 469601#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 469239#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 469240#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 478469#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 475283#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 475284#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 475891#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 475892#L3343 assume !(0 == getOrigin_~person#1); 476252#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 465943#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 465944#L2903 assume !(0 == initPersonOnFloor_~floor#1); 472343#L2930 assume !(1 == initPersonOnFloor_~floor#1); 470173#L2957 assume !(2 == initPersonOnFloor_~floor#1); 470174#L2984 assume 3 == initPersonOnFloor_~floor#1; 472203#L2985 assume !(0 == initPersonOnFloor_~person#1); 475267#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 463500#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 469357#L2695 assume !(0 == callOnFloor_~floorID#1); 469358#L2698 assume !(1 == callOnFloor_~floorID#1); 469117#L2701 assume !(2 == callOnFloor_~floorID#1); 469118#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 468312#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 474062#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 475506#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 478455#L3343-1 assume !(0 == getOrigin_~person#1); 478612#L3347-1 assume !(1 == getOrigin_~person#1); 463593#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 463594#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 478641#L2903-1 assume 0 == initPersonOnFloor_~floor#1; 463444#L2904-2 assume !(0 == initPersonOnFloor_~person#1); 461291#L2907-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 461293#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 478622#L2695-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 475449#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 467287#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 467288#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 472620#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 472621#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 477123#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 477914#L1702 assume 0 != timeShift_~tmp~16#1; 474441#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 465828#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 464331#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 464332#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 473722#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 475348#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 471351#L1992-2 [2024-10-13 17:29:56,595 INFO L747 eck$LassoCheckResult]: Loop: 471351#L1992-2 assume !false; 466779#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 460852#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 460853#L2001-2 assume !false; 466301#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 471350#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 471351#L1992-2 [2024-10-13 17:29:56,595 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:56,595 INFO L85 PathProgramCache]: Analyzing trace with hash -507725210, now seen corresponding path program 1 times [2024-10-13 17:29:56,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:56,595 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2105362476] [2024-10-13 17:29:56,595 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:56,596 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:56,616 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:56,877 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-13 17:29:56,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:56,878 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2105362476] [2024-10-13 17:29:56,878 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2105362476] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:56,878 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:56,878 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-13 17:29:56,878 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1271227643] [2024-10-13 17:29:56,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:56,878 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:56,878 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:56,879 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 5 times [2024-10-13 17:29:56,879 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:56,879 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [598485538] [2024-10-13 17:29:56,879 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:56,879 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:56,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:56,889 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:56,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:56,896 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:56,912 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:56,912 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-13 17:29:56,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-13 17:29:56,913 INFO L87 Difference]: Start difference. First operand 18008 states and 33616 transitions. cyclomatic complexity: 15645 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-13 17:29:57,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:57,231 INFO L93 Difference]: Finished difference Result 17994 states and 33590 transitions. [2024-10-13 17:29:57,232 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17994 states and 33590 transitions. [2024-10-13 17:29:57,296 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:57,343 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17994 states to 17994 states and 33590 transitions. [2024-10-13 17:29:57,344 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17911 [2024-10-13 17:29:57,358 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17911 [2024-10-13 17:29:57,359 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17994 states and 33590 transitions. [2024-10-13 17:29:57,367 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:57,367 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17994 states and 33590 transitions. [2024-10-13 17:29:57,388 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17994 states and 33590 transitions. [2024-10-13 17:29:57,517 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17994 to 17994. [2024-10-13 17:29:57,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17994 states, 17994 states have (on average 1.8667333555629655) internal successors, (33590), 17993 states have internal predecessors, (33590), 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-13 17:29:57,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17994 states to 17994 states and 33590 transitions. [2024-10-13 17:29:57,567 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17994 states and 33590 transitions. [2024-10-13 17:29:57,568 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-13 17:29:57,568 INFO L425 stractBuchiCegarLoop]: Abstraction has 17994 states and 33590 transitions. [2024-10-13 17:29:57,568 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-10-13 17:29:57,568 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17994 states and 33590 transitions. [2024-10-13 17:29:57,613 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:57,613 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:57,613 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:57,614 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-13 17:29:57,614 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:57,615 INFO L745 eck$LassoCheckResult]: Stem: 505605#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 505243#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 505244#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 514473#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 511283#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 511284#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 511891#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 511892#L3343 assume !(0 == getOrigin_~person#1); 512255#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 501946#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 501947#L2903 assume !(0 == initPersonOnFloor_~floor#1); 508345#L2930 assume !(1 == initPersonOnFloor_~floor#1); 506177#L2957 assume !(2 == initPersonOnFloor_~floor#1); 506178#L2984 assume 3 == initPersonOnFloor_~floor#1; 508205#L2985 assume !(0 == initPersonOnFloor_~person#1); 511267#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 499504#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 505361#L2695 assume !(0 == callOnFloor_~floorID#1); 505362#L2698 assume !(1 == callOnFloor_~floorID#1); 505121#L2701 assume !(2 == callOnFloor_~floorID#1); 505122#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 504317#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 510064#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 511507#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 514459#L3343-1 assume !(0 == getOrigin_~person#1); 514614#L3347-1 assume !(1 == getOrigin_~person#1); 499597#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 499598#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 505687#L2903-1 assume !(0 == initPersonOnFloor_~floor#1); 505688#L2930-1 assume 1 == initPersonOnFloor_~floor#1; 514498#L2931-2 assume !(0 == initPersonOnFloor_~person#1); 514205#L2934-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_1~0 := 1; 507531#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 514626#L2695-2 assume !(0 == callOnFloor_~floorID#1); 514623#L2698-2 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 511449#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 503290#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 503291#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 508622#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 508623#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 513125#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 513916#L1702 assume 0 != timeShift_~tmp~16#1; 510443#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 501831#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 500334#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 500335#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 509725#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 511349#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 507353#L1992-2 [2024-10-13 17:29:57,615 INFO L747 eck$LassoCheckResult]: Loop: 507353#L1992-2 assume !false; 502782#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 496862#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 496863#L2001-2 assume !false; 502304#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 507352#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 507353#L1992-2 [2024-10-13 17:29:57,615 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:57,615 INFO L85 PathProgramCache]: Analyzing trace with hash 1319509436, now seen corresponding path program 1 times [2024-10-13 17:29:57,615 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:57,615 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1020165188] [2024-10-13 17:29:57,615 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:57,616 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:57,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:57,804 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-13 17:29:57,804 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:57,805 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1020165188] [2024-10-13 17:29:57,805 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1020165188] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:57,805 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:57,805 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-13 17:29:57,805 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [832166124] [2024-10-13 17:29:57,805 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:57,805 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:57,806 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:57,806 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 6 times [2024-10-13 17:29:57,806 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:57,806 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1667794465] [2024-10-13 17:29:57,806 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:57,806 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:57,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:57,815 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:57,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:57,821 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:57,835 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:57,835 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-13 17:29:57,835 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-10-13 17:29:57,836 INFO L87 Difference]: Start difference. First operand 17994 states and 33590 transitions. cyclomatic complexity: 15633 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-13 17:29:58,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:58,143 INFO L93 Difference]: Finished difference Result 17988 states and 33577 transitions. [2024-10-13 17:29:58,143 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17988 states and 33577 transitions. [2024-10-13 17:29:58,206 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:58,255 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17988 states to 17988 states and 33577 transitions. [2024-10-13 17:29:58,255 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17905 [2024-10-13 17:29:58,270 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17905 [2024-10-13 17:29:58,270 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17988 states and 33577 transitions. [2024-10-13 17:29:58,282 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:58,283 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17988 states and 33577 transitions. [2024-10-13 17:29:58,304 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17988 states and 33577 transitions. [2024-10-13 17:29:58,430 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17988 to 17988. [2024-10-13 17:29:58,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17988 states, 17988 states have (on average 1.8666333110962865) internal successors, (33577), 17987 states have internal predecessors, (33577), 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-13 17:29:58,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17988 states to 17988 states and 33577 transitions. [2024-10-13 17:29:58,478 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17988 states and 33577 transitions. [2024-10-13 17:29:58,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-13 17:29:58,479 INFO L425 stractBuchiCegarLoop]: Abstraction has 17988 states and 33577 transitions. [2024-10-13 17:29:58,479 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-10-13 17:29:58,479 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17988 states and 33577 transitions. [2024-10-13 17:29:58,626 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:58,626 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:58,626 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:58,627 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-13 17:29:58,627 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:58,627 INFO L745 eck$LassoCheckResult]: Stem: 541594#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 541232#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 541233#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 550458#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 547268#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 547269#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 547877#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 547878#L3343 assume !(0 == getOrigin_~person#1); 548241#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 537936#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 537937#L2903 assume !(0 == initPersonOnFloor_~floor#1); 544331#L2930 assume !(1 == initPersonOnFloor_~floor#1); 542166#L2957 assume !(2 == initPersonOnFloor_~floor#1); 542167#L2984 assume 3 == initPersonOnFloor_~floor#1; 544191#L2985 assume !(0 == initPersonOnFloor_~person#1); 547252#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 535494#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 541350#L2695 assume !(0 == callOnFloor_~floorID#1); 541351#L2698 assume !(1 == callOnFloor_~floorID#1); 541110#L2701 assume !(2 == callOnFloor_~floorID#1); 541111#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 540307#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 546049#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 547492#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 550444#L3343-1 assume !(0 == getOrigin_~person#1); 550599#L3347-1 assume !(1 == getOrigin_~person#1); 535587#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 535588#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 541676#L2903-1 assume !(0 == initPersonOnFloor_~floor#1); 541677#L2930-1 assume !(1 == initPersonOnFloor_~floor#1); 547637#L2957-1 assume 2 == initPersonOnFloor_~floor#1; 538366#L2958-2 assume !(0 == initPersonOnFloor_~person#1); 532720#L2961-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_2~0 := 1; 532721#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 550609#L2695-2 assume !(0 == callOnFloor_~floorID#1); 550608#L2698-2 assume !(1 == callOnFloor_~floorID#1); 550607#L2701-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 547434#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 539280#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 539281#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 544608#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 544609#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 549112#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 549905#L1702 assume 0 != timeShift_~tmp~16#1; 546428#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 537821#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 536324#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 536325#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 545710#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 547334#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 543343#L1992-2 [2024-10-13 17:29:58,628 INFO L747 eck$LassoCheckResult]: Loop: 543343#L1992-2 assume !false; 538772#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 532852#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 532853#L2001-2 assume !false; 538294#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 543342#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 543343#L1992-2 [2024-10-13 17:29:58,628 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:58,628 INFO L85 PathProgramCache]: Analyzing trace with hash 1479862237, now seen corresponding path program 1 times [2024-10-13 17:29:58,628 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:58,628 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1447136493] [2024-10-13 17:29:58,629 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:58,629 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:58,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:58,696 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-13 17:29:58,696 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:58,696 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1447136493] [2024-10-13 17:29:58,696 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1447136493] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:58,696 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:58,696 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-13 17:29:58,697 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [433257185] [2024-10-13 17:29:58,697 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:58,697 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:58,697 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:58,697 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 7 times [2024-10-13 17:29:58,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:58,698 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [537274641] [2024-10-13 17:29:58,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:58,698 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:58,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:58,711 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:58,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:58,717 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:58,733 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:58,733 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-13 17:29:58,733 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-13 17:29:58,734 INFO L87 Difference]: Start difference. First operand 17988 states and 33577 transitions. cyclomatic complexity: 15626 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-13 17:29:59,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:29:59,201 INFO L93 Difference]: Finished difference Result 18004 states and 33589 transitions. [2024-10-13 17:29:59,202 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 18004 states and 33589 transitions. [2024-10-13 17:29:59,287 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:59,341 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 18004 states to 18004 states and 33589 transitions. [2024-10-13 17:29:59,342 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17921 [2024-10-13 17:29:59,354 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17921 [2024-10-13 17:29:59,355 INFO L73 IsDeterministic]: Start isDeterministic. Operand 18004 states and 33589 transitions. [2024-10-13 17:29:59,370 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:29:59,370 INFO L218 hiAutomatonCegarLoop]: Abstraction has 18004 states and 33589 transitions. [2024-10-13 17:29:59,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18004 states and 33589 transitions. [2024-10-13 17:29:59,561 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18004 to 17988. [2024-10-13 17:29:59,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17988 states, 17988 states have (on average 1.866188570157883) internal successors, (33569), 17987 states have internal predecessors, (33569), 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-13 17:29:59,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17988 states to 17988 states and 33569 transitions. [2024-10-13 17:29:59,617 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17988 states and 33569 transitions. [2024-10-13 17:29:59,618 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-13 17:29:59,618 INFO L425 stractBuchiCegarLoop]: Abstraction has 17988 states and 33569 transitions. [2024-10-13 17:29:59,618 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-10-13 17:29:59,618 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17988 states and 33569 transitions. [2024-10-13 17:29:59,676 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2024-10-13 17:29:59,676 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:29:59,676 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:29:59,677 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-13 17:29:59,677 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:29:59,677 INFO L745 eck$LassoCheckResult]: Stem: 577591#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 577229#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 577230#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 586455#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 583267#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 583268#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 583876#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 583877#L3343 assume !(0 == getOrigin_~person#1); 584238#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 573938#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 573939#L2903 assume !(0 == initPersonOnFloor_~floor#1); 580329#L2930 assume !(1 == initPersonOnFloor_~floor#1); 578164#L2957 assume !(2 == initPersonOnFloor_~floor#1); 578165#L2984 assume 3 == initPersonOnFloor_~floor#1; 580189#L2985 assume !(0 == initPersonOnFloor_~person#1); 583251#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 571492#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 577348#L2695 assume !(0 == callOnFloor_~floorID#1); 577349#L2698 assume !(1 == callOnFloor_~floorID#1); 577107#L2701 assume !(2 == callOnFloor_~floorID#1); 577108#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 576304#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 582048#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 583491#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 586441#L3343-1 assume !(0 == getOrigin_~person#1); 586596#L3347-1 assume !(1 == getOrigin_~person#1); 571585#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 571586#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 577673#L2903-1 assume !(0 == initPersonOnFloor_~floor#1); 577674#L2930-1 assume !(1 == initPersonOnFloor_~floor#1); 583636#L2957-1 assume 2 == initPersonOnFloor_~floor#1; 574363#L2958-2 assume !(0 == initPersonOnFloor_~person#1); 568719#L2961-2 assume !(1 == initPersonOnFloor_~person#1); 568720#L2964-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 578035#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 586640#L2695-2 assume !(0 == callOnFloor_~floorID#1); 586638#L2698-2 assume !(1 == callOnFloor_~floorID#1); 586636#L2701-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 583433#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 575277#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 575278#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 580606#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 580607#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 585109#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 585902#L1702 assume 0 != timeShift_~tmp~16#1; 582427#L1703 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 573821#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 572322#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 572323#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 581709#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 583333#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 579341#L1992-2 [2024-10-13 17:29:59,677 INFO L747 eck$LassoCheckResult]: Loop: 579341#L1992-2 assume !false; 574769#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 568850#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 568851#L2001-2 assume !false; 574291#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 579340#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 579341#L1992-2 [2024-10-13 17:29:59,678 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:59,678 INFO L85 PathProgramCache]: Analyzing trace with hash -1525038236, now seen corresponding path program 1 times [2024-10-13 17:29:59,678 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:59,678 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1398480954] [2024-10-13 17:29:59,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:59,678 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:59,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:29:59,792 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-13 17:29:59,792 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:29:59,792 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1398480954] [2024-10-13 17:29:59,796 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1398480954] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:29:59,796 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:29:59,796 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-10-13 17:29:59,796 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2122067923] [2024-10-13 17:29:59,796 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:29:59,797 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:29:59,797 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:29:59,797 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 8 times [2024-10-13 17:29:59,797 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:29:59,797 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [846455461] [2024-10-13 17:29:59,797 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:29:59,797 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:29:59,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:59,829 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:29:59,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:29:59,838 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:29:59,856 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:29:59,856 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-13 17:29:59,856 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-13 17:29:59,856 INFO L87 Difference]: Start difference. First operand 17988 states and 33569 transitions. cyclomatic complexity: 15618 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-13 17:30:00,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:30:00,721 INFO L93 Difference]: Finished difference Result 33988 states and 63548 transitions. [2024-10-13 17:30:00,721 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33988 states and 63548 transitions. [2024-10-13 17:30:00,843 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7120 [2024-10-13 17:30:00,934 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33988 states to 33988 states and 63548 transitions. [2024-10-13 17:30:00,934 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33822 [2024-10-13 17:30:00,959 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33822 [2024-10-13 17:30:00,959 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33988 states and 63548 transitions. [2024-10-13 17:30:00,963 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:30:00,963 INFO L218 hiAutomatonCegarLoop]: Abstraction has 33988 states and 63548 transitions. [2024-10-13 17:30:00,992 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33988 states and 63548 transitions. [2024-10-13 17:30:01,216 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33988 to 28976. [2024-10-13 17:30:01,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28976 states, 28976 states have (on average 1.8656819436775263) internal successors, (54060), 28975 states have internal predecessors, (54060), 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-13 17:30:01,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28976 states to 28976 states and 54060 transitions. [2024-10-13 17:30:01,655 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28976 states and 54060 transitions. [2024-10-13 17:30:01,656 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-13 17:30:01,656 INFO L425 stractBuchiCegarLoop]: Abstraction has 28976 states and 54060 transitions. [2024-10-13 17:30:01,656 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-10-13 17:30:01,656 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28976 states and 54060 transitions. [2024-10-13 17:30:01,713 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7120 [2024-10-13 17:30:01,713 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:30:01,713 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:30:01,714 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-13 17:30:01,714 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:30:01,714 INFO L745 eck$LassoCheckResult]: Stem: 629612#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 629243#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 629244#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 638803#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 635381#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 635382#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 636008#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 636009#L3343 assume !(0 == getOrigin_~person#1); 636393#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 625928#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 625929#L2903 assume !(0 == initPersonOnFloor_~floor#1); 632382#L2930 assume !(1 == initPersonOnFloor_~floor#1); 630190#L2957 assume !(2 == initPersonOnFloor_~floor#1); 630191#L2984 assume 3 == initPersonOnFloor_~floor#1; 632241#L2985 assume !(0 == initPersonOnFloor_~person#1); 635360#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 623476#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 629369#L2695 assume !(0 == callOnFloor_~floorID#1); 629370#L2698 assume !(1 == callOnFloor_~floorID#1); 629119#L2701 assume !(2 == callOnFloor_~floorID#1); 629120#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 628308#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 634126#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 635612#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 638786#L3343-1 assume !(0 == getOrigin_~person#1); 638978#L3347-1 assume !(1 == getOrigin_~person#1); 623569#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 623570#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 629695#L2903-1 assume !(0 == initPersonOnFloor_~floor#1); 629696#L2930-1 assume !(1 == initPersonOnFloor_~floor#1); 635762#L2957-1 assume 2 == initPersonOnFloor_~floor#1; 626354#L2958-2 assume !(0 == initPersonOnFloor_~person#1); 620701#L2961-2 assume !(1 == initPersonOnFloor_~person#1); 620702#L2964-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 630062#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 639001#L2695-2 assume !(0 == callOnFloor_~floorID#1); 639000#L2698-2 assume !(1 == callOnFloor_~floorID#1); 638999#L2701-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 635554#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 627274#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 627275#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 632663#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 632664#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 637315#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 638165#L1702 assume !(0 != timeShift_~tmp~16#1);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__executivefloor } true;havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;havoc timeShift__wrappee__executivefloor_~tmp~15#1;havoc timeShift__wrappee__executivefloor_~tmp___0~7#1;havoc timeShift__wrappee__executivefloor_~tmp___1~3#1;havoc timeShift__wrappee__executivefloor_~tmp___2~3#1;havoc timeShift__wrappee__executivefloor_~tmp___3~3#1;havoc timeShift__wrappee__executivefloor_~tmp___4~2#1;havoc timeShift__wrappee__executivefloor_~tmp___5~2#1;havoc timeShift__wrappee__executivefloor_~tmp___6~2#1;havoc timeShift__wrappee__executivefloor_~tmp___7~2#1;havoc timeShift__wrappee__executivefloor_~tmp___8~2#1;havoc timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~17#1;havoc stopRequestedAtCurrentFloor_~tmp~13#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 636581#L2632-65 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 625076#isFloorCalling_returnLabel#66 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 625771#isExecutiveFloorCalling_returnLabel#4 stopRequestedAtCurrentFloor_#t~ret59#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~13#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1; 627915#L1417-1 assume 0 != stopRequestedAtCurrentFloor_~tmp~13#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 627916#getCurrentFloorID_returnLabel#6 stopRequestedAtCurrentFloor_#t~ret60#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret60#1;havoc stopRequestedAtCurrentFloor_#t~ret60#1; 635413#L1421-1 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~5#1);stopRequestedAtCurrentFloor_~retValue_acc~17#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~17#1; 634201#stopRequestedAtCurrentFloor_returnLabel#2 timeShift__wrappee__executivefloor_#t~ret75#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__executivefloor_~tmp___9~2#1 := timeShift__wrappee__executivefloor_#t~ret75#1;havoc timeShift__wrappee__executivefloor_#t~ret75#1; 634320#L1569-2 assume !(0 != timeShift__wrappee__executivefloor_~tmp___9~2#1); 632299#L1660-3 assume !(1 == ~doorState~0); 632300#L1660-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~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#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~13#1;havoc stopRequestedInDirection_~tmp~9#1;havoc stopRequestedInDirection_~tmp___0~2#1;havoc stopRequestedInDirection_~__cil_tmp7~5#1;havoc stopRequestedInDirection_~__cil_tmp8~6#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 624785#L2632-68 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 624786#isFloorCalling_returnLabel#69 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 632755#isExecutiveFloorCalling_returnLabel#5 stopRequestedInDirection_#t~ret50#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~2#1 := stopRequestedInDirection_#t~ret50#1;havoc stopRequestedInDirection_#t~ret50#1; 634907#L1272-2 assume 0 != stopRequestedInDirection_~tmp___0~2#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 631101#getCurrentFloorID_returnLabel#9 stopRequestedInDirection_#t~ret51#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~9#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~__cil_tmp7~5#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~6#1 := (if stopRequestedInDirection_~tmp~9#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~13#1 := (if stopRequestedInDirection_~__cil_tmp8~6#1 == stopRequestedInDirection_~__cil_tmp7~5#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~13#1; 623207#stopRequestedInDirection_returnLabel#3 timeShift__wrappee__executivefloor_#t~ret82#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__executivefloor_~tmp___8~2#1 := timeShift__wrappee__executivefloor_#t~ret82#1;havoc timeShift__wrappee__executivefloor_#t~ret82#1; 623208#L1668-2 assume 0 != timeShift__wrappee__executivefloor_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~10#1;~currentHeading~0 := continueInDirection_~dir#1; 635457#L1329-3 assume !(1 == ~currentHeading~0); 627669#L1339-9 assume !(0 == ~currentFloorID~0); 627670#L1339-11 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 632378#L1345-7 havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 625809#L1677-5 havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__executivefloor } true; 625810#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 624307#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 624308#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 633783#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 635449#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 631386#L1992-2 [2024-10-13 17:30:01,715 INFO L747 eck$LassoCheckResult]: Loop: 631386#L1992-2 assume !false; 626765#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 620832#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 620833#L2001-2 assume !false; 626281#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 631385#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 631386#L1992-2 [2024-10-13 17:30:01,715 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:01,715 INFO L85 PathProgramCache]: Analyzing trace with hash 401192103, now seen corresponding path program 1 times [2024-10-13 17:30:01,715 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:01,715 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [286119848] [2024-10-13 17:30:01,715 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:01,716 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:01,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:30:01,843 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-13 17:30:01,844 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:30:01,844 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [286119848] [2024-10-13 17:30:01,844 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [286119848] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:30:01,844 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:30:01,844 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-10-13 17:30:01,844 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1228334973] [2024-10-13 17:30:01,844 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:30:01,844 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:30:01,845 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:01,846 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 9 times [2024-10-13 17:30:01,846 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:01,846 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1719598471] [2024-10-13 17:30:01,846 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:01,846 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:01,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:01,855 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:30:01,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:01,862 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:30:01,876 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:30:01,877 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-10-13 17:30:01,877 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2024-10-13 17:30:01,877 INFO L87 Difference]: Start difference. First operand 28976 states and 54060 transitions. cyclomatic complexity: 25158 Second operand has 8 states, 8 states have (on average 9.0) internal successors, (72), 7 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-13 17:30:02,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:30:02,626 INFO L93 Difference]: Finished difference Result 28268 states and 52291 transitions. [2024-10-13 17:30:02,626 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 28268 states and 52291 transitions. [2024-10-13 17:30:02,711 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8500 [2024-10-13 17:30:02,774 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 28268 states to 28268 states and 52291 transitions. [2024-10-13 17:30:02,774 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28019 [2024-10-13 17:30:02,787 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28019 [2024-10-13 17:30:02,787 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28268 states and 52291 transitions. [2024-10-13 17:30:02,788 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:30:02,788 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28268 states and 52291 transitions. [2024-10-13 17:30:02,808 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28268 states and 52291 transitions. [2024-10-13 17:30:03,008 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28268 to 28268. [2024-10-13 17:30:03,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28268 states, 28268 states have (on average 1.8498301966888355) internal successors, (52291), 28267 states have internal predecessors, (52291), 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-13 17:30:03,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28268 states to 28268 states and 52291 transitions. [2024-10-13 17:30:03,080 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28268 states and 52291 transitions. [2024-10-13 17:30:03,080 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-10-13 17:30:03,080 INFO L425 stractBuchiCegarLoop]: Abstraction has 28268 states and 52291 transitions. [2024-10-13 17:30:03,080 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-10-13 17:30:03,080 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28268 states and 52291 transitions. [2024-10-13 17:30:03,145 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8500 [2024-10-13 17:30:03,145 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:30:03,145 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:30:03,146 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-13 17:30:03,146 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:30:03,146 INFO L745 eck$LassoCheckResult]: Stem: 686050#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 685724#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 685725#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 694340#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 691261#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 691262#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 691828#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 691829#L3343 assume !(0 == getOrigin_~person#1); 692177#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 682739#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 682740#L2903 assume !(0 == initPersonOnFloor_~floor#1); 688558#L2930 assume !(1 == initPersonOnFloor_~floor#1); 686572#L2957 assume !(2 == initPersonOnFloor_~floor#1); 686573#L2984 assume 3 == initPersonOnFloor_~floor#1; 688432#L2985 assume !(0 == initPersonOnFloor_~person#1); 691244#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 680513#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 685827#L2695 assume !(0 == callOnFloor_~floorID#1); 685828#L2698 assume !(1 == callOnFloor_~floorID#1); 685608#L2701 assume !(2 == callOnFloor_~floorID#1); 685609#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 684887#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 690137#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 691466#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 694326#L3343-1 assume !(0 == getOrigin_~person#1); 694526#L3347-1 assume !(1 == getOrigin_~person#1); 680599#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 680600#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 686126#L2903-1 assume !(0 == initPersonOnFloor_~floor#1); 686127#L2930-1 assume !(1 == initPersonOnFloor_~floor#1); 691607#L2957-1 assume 2 == initPersonOnFloor_~floor#1; 683125#L2958-2 assume !(0 == initPersonOnFloor_~person#1); 677961#L2961-2 assume !(1 == initPersonOnFloor_~person#1); 677962#L2964-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 686455#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 694727#L2695-2 assume !(0 == callOnFloor_~floorID#1); 694726#L2698-2 assume !(1 == callOnFloor_~floorID#1); 694725#L2701-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 691413#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 683956#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 683957#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 688801#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 688802#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 692995#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 693764#L1702 assume 0 != timeShift_~tmp~16#1; 690498#L1703 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__executivefloor } true;havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;havoc timeShift__wrappee__executivefloor_~tmp~15#1;havoc timeShift__wrappee__executivefloor_~tmp___0~7#1;havoc timeShift__wrappee__executivefloor_~tmp___1~3#1;havoc timeShift__wrappee__executivefloor_~tmp___2~3#1;havoc timeShift__wrappee__executivefloor_~tmp___3~3#1;havoc timeShift__wrappee__executivefloor_~tmp___4~2#1;havoc timeShift__wrappee__executivefloor_~tmp___5~2#1;havoc timeShift__wrappee__executivefloor_~tmp___6~2#1;havoc timeShift__wrappee__executivefloor_~tmp___7~2#1;havoc timeShift__wrappee__executivefloor_~tmp___8~2#1;havoc timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~17#1;havoc stopRequestedAtCurrentFloor_~tmp~13#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 690499#L2632 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 680451#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 688776#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~13#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1; 690234#L1417 assume 0 != stopRequestedAtCurrentFloor_~tmp~13#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 684076#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret60#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret60#1;havoc stopRequestedAtCurrentFloor_#t~ret60#1; 678538#L1421 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~5#1);stopRequestedAtCurrentFloor_~retValue_acc~17#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~17#1; 678403#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__executivefloor_#t~ret75#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__executivefloor_~tmp___9~2#1 := timeShift__wrappee__executivefloor_#t~ret75#1;havoc timeShift__wrappee__executivefloor_#t~ret75#1; 678404#L1569 assume !(0 != timeShift__wrappee__executivefloor_~tmp___9~2#1); 693921#L1660 assume 1 == ~doorState~0;~doorState~0 := 0; 693404#L1660-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~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#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~13#1;havoc stopRequestedInDirection_~tmp~9#1;havoc stopRequestedInDirection_~tmp___0~2#1;havoc stopRequestedInDirection_~__cil_tmp7~5#1;havoc stopRequestedInDirection_~__cil_tmp8~6#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 693405#L2632-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 679602#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 692546#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret50#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~2#1 := stopRequestedInDirection_#t~ret50#1;havoc stopRequestedInDirection_#t~ret50#1; 693868#L1272 assume 0 != stopRequestedInDirection_~tmp___0~2#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 694488#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret51#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~9#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~__cil_tmp7~5#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~6#1 := (if stopRequestedInDirection_~tmp~9#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~13#1 := (if stopRequestedInDirection_~__cil_tmp8~6#1 == stopRequestedInDirection_~__cil_tmp7~5#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~13#1; 691890#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__executivefloor_#t~ret82#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__executivefloor_~tmp___8~2#1 := timeShift__wrappee__executivefloor_#t~ret82#1;havoc timeShift__wrappee__executivefloor_#t~ret82#1; 685586#L1668 assume 0 != timeShift__wrappee__executivefloor_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~10#1;~currentHeading~0 := continueInDirection_~dir#1; 685588#L1329 assume !(1 == ~currentHeading~0); 680070#L1339 assume !(0 == ~currentFloorID~0); 680071#L1339-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 681663#L1345-1 havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 690471#L1677-2 havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__executivefloor } true; 694575#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 694568#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 694569#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 694574#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 694691#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 694692#L1992-2 [2024-10-13 17:30:03,147 INFO L747 eck$LassoCheckResult]: Loop: 694692#L1992-2 assume !false; 694689#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 694690#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 694683#L2001-2 assume !false; 694681#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 694682#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 694692#L1992-2 [2024-10-13 17:30:03,147 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:03,147 INFO L85 PathProgramCache]: Analyzing trace with hash 886367810, now seen corresponding path program 1 times [2024-10-13 17:30:03,147 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:03,147 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [341190150] [2024-10-13 17:30:03,147 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:03,147 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:03,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:30:03,209 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-13 17:30:03,209 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:30:03,209 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [341190150] [2024-10-13 17:30:03,209 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [341190150] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:30:03,209 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:30:03,209 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-10-13 17:30:03,209 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2087013295] [2024-10-13 17:30:03,210 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:30:03,210 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:30:03,210 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:03,210 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 10 times [2024-10-13 17:30:03,210 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:03,210 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1614720923] [2024-10-13 17:30:03,210 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:03,211 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:03,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:03,219 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:30:03,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:03,225 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:30:03,239 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:30:03,239 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-13 17:30:03,239 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-13 17:30:03,239 INFO L87 Difference]: Start difference. First operand 28268 states and 52291 transitions. cyclomatic complexity: 24157 Second operand has 4 states, 4 states have (on average 18.25) internal successors, (73), 3 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-13 17:30:08,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:30:08,751 INFO L93 Difference]: Finished difference Result 28268 states and 51036 transitions. [2024-10-13 17:30:08,751 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 28268 states and 51036 transitions. [2024-10-13 17:30:08,885 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8500 [2024-10-13 17:30:08,974 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 28268 states to 28268 states and 51036 transitions. [2024-10-13 17:30:08,975 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28019 [2024-10-13 17:30:08,999 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28019 [2024-10-13 17:30:08,999 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28268 states and 51036 transitions. [2024-10-13 17:30:09,014 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:30:09,015 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28268 states and 51036 transitions. [2024-10-13 17:30:09,045 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28268 states and 51036 transitions. [2024-10-13 17:30:09,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28268 to 28268. [2024-10-13 17:30:09,512 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28268 states, 28268 states have (on average 1.8054337059572663) internal successors, (51036), 28267 states have internal predecessors, (51036), 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-13 17:30:09,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28268 states to 28268 states and 51036 transitions. [2024-10-13 17:30:09,560 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28268 states and 51036 transitions. [2024-10-13 17:30:09,560 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-13 17:30:09,560 INFO L425 stractBuchiCegarLoop]: Abstraction has 28268 states and 51036 transitions. [2024-10-13 17:30:09,561 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-10-13 17:30:09,561 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28268 states and 51036 transitions. [2024-10-13 17:30:09,632 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8500 [2024-10-13 17:30:09,633 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:30:09,633 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:30:09,633 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, 1, 1, 1, 1, 1, 1] [2024-10-13 17:30:09,633 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:30:09,634 INFO L745 eck$LassoCheckResult]: Stem: 742551#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 742216#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 742217#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 750851#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 747748#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 747749#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 748320#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 748321#L3343 assume !(0 == getOrigin_~person#1); 748663#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 739221#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 739222#L2903 assume !(0 == initPersonOnFloor_~floor#1); 745049#L2930 assume !(1 == initPersonOnFloor_~floor#1); 743072#L2957 assume !(2 == initPersonOnFloor_~floor#1); 743073#L2984 assume 3 == initPersonOnFloor_~floor#1; 744923#L2985 assume !(0 == initPersonOnFloor_~person#1); 747732#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 737032#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 742323#L2695 assume !(0 == callOnFloor_~floorID#1); 742324#L2698 assume !(1 == callOnFloor_~floorID#1); 742098#L2701 assume !(2 == callOnFloor_~floorID#1); 742099#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 741375#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 746631#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 747956#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 750833#L3343-1 assume !(0 == getOrigin_~person#1); 751015#L3347-1 assume !(1 == getOrigin_~person#1); 737116#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 737117#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 742626#L2903-1 assume !(0 == initPersonOnFloor_~floor#1); 742627#L2930-1 assume !(1 == initPersonOnFloor_~floor#1); 748096#L2957-1 assume 2 == initPersonOnFloor_~floor#1; 739608#L2958-2 assume !(0 == initPersonOnFloor_~person#1); 734506#L2961-2 assume !(1 == initPersonOnFloor_~person#1); 734507#L2964-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 742954#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 751213#L2695-2 assume !(0 == callOnFloor_~floorID#1); 751212#L2698-2 assume !(1 == callOnFloor_~floorID#1); 751211#L2701-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 747904#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 740439#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 740440#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 745291#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 745292#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 749499#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 750281#L1702 assume 0 != timeShift_~tmp~16#1; 746990#L1703 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__executivefloor } true;havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;havoc timeShift__wrappee__executivefloor_~tmp~15#1;havoc timeShift__wrappee__executivefloor_~tmp___0~7#1;havoc timeShift__wrappee__executivefloor_~tmp___1~3#1;havoc timeShift__wrappee__executivefloor_~tmp___2~3#1;havoc timeShift__wrappee__executivefloor_~tmp___3~3#1;havoc timeShift__wrappee__executivefloor_~tmp___4~2#1;havoc timeShift__wrappee__executivefloor_~tmp___5~2#1;havoc timeShift__wrappee__executivefloor_~tmp___6~2#1;havoc timeShift__wrappee__executivefloor_~tmp___7~2#1;havoc timeShift__wrappee__executivefloor_~tmp___8~2#1;havoc timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~17#1;havoc stopRequestedAtCurrentFloor_~tmp~13#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 746991#L2632 assume !(0 == isFloorCalling_~floorID#1); 736970#L2636 assume !(1 == isFloorCalling_~floorID#1); 736971#L2640 assume !(2 == isFloorCalling_~floorID#1); 747683#L2644 assume !(3 == isFloorCalling_~floorID#1); 746486#L2648 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 745265#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 745266#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~13#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1; 746732#L1417 assume 0 != stopRequestedAtCurrentFloor_~tmp~13#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 740558#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret60#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret60#1;havoc stopRequestedAtCurrentFloor_#t~ret60#1; 735079#L1421 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~5#1);stopRequestedAtCurrentFloor_~retValue_acc~17#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~17#1; 734943#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__executivefloor_#t~ret75#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__executivefloor_~tmp___9~2#1 := timeShift__wrappee__executivefloor_#t~ret75#1;havoc timeShift__wrappee__executivefloor_#t~ret75#1; 734944#L1569 assume !(0 != timeShift__wrappee__executivefloor_~tmp___9~2#1); 750431#L1660 assume 1 == ~doorState~0;~doorState~0 := 0; 749923#L1660-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~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#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~13#1;havoc stopRequestedInDirection_~tmp~9#1;havoc stopRequestedInDirection_~tmp___0~2#1;havoc stopRequestedInDirection_~__cil_tmp7~5#1;havoc stopRequestedInDirection_~__cil_tmp8~6#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 749924#L2632-3 assume !(0 == isFloorCalling_~floorID#1); 749414#L2636-3 assume !(1 == isFloorCalling_~floorID#1); 749415#L2640-3 assume !(2 == isFloorCalling_~floorID#1); 750359#L2644-3 assume !(3 == isFloorCalling_~floorID#1); 736131#L2648-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 736132#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 749034#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret50#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~2#1 := stopRequestedInDirection_#t~ret50#1;havoc stopRequestedInDirection_#t~ret50#1; 750379#L1272 assume 0 != stopRequestedInDirection_~tmp___0~2#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 750986#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret51#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~9#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~__cil_tmp7~5#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~6#1 := (if stopRequestedInDirection_~tmp~9#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~13#1 := (if stopRequestedInDirection_~__cil_tmp8~6#1 == stopRequestedInDirection_~__cil_tmp7~5#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~13#1; 748379#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__executivefloor_#t~ret82#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__executivefloor_~tmp___8~2#1 := timeShift__wrappee__executivefloor_#t~ret82#1;havoc timeShift__wrappee__executivefloor_#t~ret82#1; 742076#L1668 assume 0 != timeShift__wrappee__executivefloor_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~10#1;~currentHeading~0 := continueInDirection_~dir#1; 742078#L1329 assume !(1 == ~currentHeading~0); 736593#L1339 assume !(0 == ~currentFloorID~0); 736594#L1339-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 738165#L1345-1 havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 746963#L1677-2 havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__executivefloor } true; 751059#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 751052#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 751053#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 751058#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 751199#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 751200#L1992-2 [2024-10-13 17:30:09,634 INFO L747 eck$LassoCheckResult]: Loop: 751200#L1992-2 assume !false; 751197#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 751198#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 751191#L2001-2 assume !false; 751189#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 751190#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 751200#L1992-2 [2024-10-13 17:30:09,635 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:09,635 INFO L85 PathProgramCache]: Analyzing trace with hash 1301382358, now seen corresponding path program 1 times [2024-10-13 17:30:09,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:09,635 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [201774889] [2024-10-13 17:30:09,635 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:09,635 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:09,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:30:09,726 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-13 17:30:09,726 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:30:09,727 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [201774889] [2024-10-13 17:30:09,727 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [201774889] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:30:09,727 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:30:09,727 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-13 17:30:09,728 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1881729370] [2024-10-13 17:30:09,729 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:30:09,729 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:30:09,730 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:09,730 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 11 times [2024-10-13 17:30:09,730 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:09,730 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1686921254] [2024-10-13 17:30:09,730 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:09,730 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:09,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:09,739 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:30:09,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:09,747 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:30:09,773 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:30:09,773 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-13 17:30:09,774 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-10-13 17:30:09,774 INFO L87 Difference]: Start difference. First operand 28268 states and 51036 transitions. cyclomatic complexity: 22902 Second operand has 6 states, 6 states have (on average 13.5) internal successors, (81), 5 states have internal predecessors, (81), 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-13 17:30:17,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-13 17:30:17,558 INFO L93 Difference]: Finished difference Result 57549 states and 102618 transitions. [2024-10-13 17:30:17,558 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 57549 states and 102618 transitions. [2024-10-13 17:30:17,762 INFO L131 ngComponentsAnalysis]: Automaton has 244 accepting balls. 17278 [2024-10-13 17:30:17,933 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 57549 states to 57549 states and 102618 transitions. [2024-10-13 17:30:17,933 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 57051 [2024-10-13 17:30:17,973 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 57051 [2024-10-13 17:30:17,973 INFO L73 IsDeterministic]: Start isDeterministic. Operand 57549 states and 102618 transitions. [2024-10-13 17:30:18,004 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-10-13 17:30:18,004 INFO L218 hiAutomatonCegarLoop]: Abstraction has 57549 states and 102618 transitions. [2024-10-13 17:30:18,045 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57549 states and 102618 transitions. [2024-10-13 17:30:18,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57549 to 55912. [2024-10-13 17:30:18,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55912 states, 55912 states have (on average 1.8060702532551152) internal successors, (100981), 55911 states have internal predecessors, (100981), 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-13 17:30:18,981 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55912 states to 55912 states and 100981 transitions. [2024-10-13 17:30:18,982 INFO L240 hiAutomatonCegarLoop]: Abstraction has 55912 states and 100981 transitions. [2024-10-13 17:30:18,982 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-10-13 17:30:18,982 INFO L425 stractBuchiCegarLoop]: Abstraction has 55912 states and 100981 transitions. [2024-10-13 17:30:18,982 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-10-13 17:30:18,983 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 55912 states and 100981 transitions. [2024-10-13 17:30:19,125 INFO L131 ngComponentsAnalysis]: Automaton has 244 accepting balls. 16844 [2024-10-13 17:30:19,126 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-13 17:30:19,126 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-13 17:30:19,126 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, 1, 1, 1, 1, 1, 1, 1] [2024-10-13 17:30:19,126 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-10-13 17:30:19,127 INFO L745 eck$LassoCheckResult]: Stem: 828541#$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(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);call #Ultimate.allocInit(9, 37);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~blocked~0 := 0;~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;~cleanupTimeShifts~0 := 12;~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;~prevDir~0 := 0; 828196#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret129#1, main_~retValue_acc~23#1, main_~tmp~27#1;havoc main_~retValue_acc~23#1;havoc main_~tmp~27#1;assume { :begin_inline_select_helpers } true; 828197#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 837919#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~31#1;havoc valid_product_~retValue_acc~31#1;valid_product_~retValue_acc~31#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~31#1; 834116#valid_product_returnLabel#1 main_#t~ret129#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~31#1;assume { :end_inline_valid_product } true;main_~tmp~27#1 := main_#t~ret129#1;havoc main_#t~ret129#1; 834117#L2436 assume 0 != main_~tmp~27#1;assume { :begin_inline_setup } true; 834755#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~ret118#1, aliceCall_~tmp~20#1;havoc aliceCall_~tmp~20#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 834756#L3343 assume !(0 == getOrigin_~person#1); 835176#L3347 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 825122#getOrigin_returnLabel#1 aliceCall_#t~ret118#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~20#1 := aliceCall_#t~ret118#1;havoc aliceCall_#t~ret118#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~20#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 825123#L2903 assume !(0 == initPersonOnFloor_~floor#1); 831169#L2930 assume !(1 == initPersonOnFloor_~floor#1); 829088#L2957 assume !(2 == initPersonOnFloor_~floor#1); 829089#L2984 assume 3 == initPersonOnFloor_~floor#1; 831039#L2985 assume !(0 == initPersonOnFloor_~person#1); 834097#L2988 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 822880#L3011-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 828306#L2695 assume !(0 == callOnFloor_~floorID#1); 828307#L2698 assume !(1 == callOnFloor_~floorID#1); 828078#L2701 assume !(2 == callOnFloor_~floorID#1); 828079#L2704 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 827331#L2707-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 838592#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 838590#aliceCall_returnLabel#1 havoc aliceCall_#t~ret118#1, aliceCall_~tmp~20#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;havoc angelinaCall_~tmp~21#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~28#1; 838587#L3343-1 assume !(0 == getOrigin_~person#1); 838586#L3347-1 assume !(1 == getOrigin_~person#1); 838585#L3351-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~28#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~28#1; 838584#getOrigin_returnLabel#2 angelinaCall_#t~ret119#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~28#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~21#1 := angelinaCall_#t~ret119#1;havoc angelinaCall_#t~ret119#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~21#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 838583#L2903-1 assume !(0 == initPersonOnFloor_~floor#1); 838582#L2930-1 assume !(1 == initPersonOnFloor_~floor#1); 838580#L2957-1 assume !(2 == initPersonOnFloor_~floor#1); 838581#L2984-1 assume !(3 == initPersonOnFloor_~floor#1); 839137#L3011-2 assume !(4 == initPersonOnFloor_~floor#1); 839128#L3011-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 839017#L2695-2 assume !(0 == callOnFloor_~floorID#1); 838873#L2698-2 assume !(1 == callOnFloor_~floorID#1); 838864#L2701-2 assume !(2 == callOnFloor_~floorID#1); 838564#L2704-2 assume !(3 == callOnFloor_~floorID#1); 838562#L2707-3 assume 4 == callOnFloor_~floorID#1;~calls_4~0 := 1; 834299#L2707-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 838379#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 838377#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret119#1, angelinaCall_~tmp~21#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret86#1, timeShift_~tmp~16#1;havoc timeShift_~tmp~16#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;havoc getCurrentHeading_~retValue_acc~7#1;getCurrentHeading_~retValue_acc~7#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~7#1; 838375#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret136#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~7#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret136#1;havoc __utac_acc__Specification13_spec__1_#t~ret136#1; 838373#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret136#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;havoc areDoorsOpen_~retValue_acc~5#1;areDoorsOpen_~retValue_acc~5#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~5#1; 838371#areDoorsOpen_returnLabel#1 timeShift_#t~ret86#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~5#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~16#1 := timeShift_#t~ret86#1;havoc timeShift_#t~ret86#1; 838369#L1702 assume 0 != timeShift_~tmp~16#1; 838366#L1703 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__executivefloor } true;havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;havoc timeShift__wrappee__executivefloor_~tmp~15#1;havoc timeShift__wrappee__executivefloor_~tmp___0~7#1;havoc timeShift__wrappee__executivefloor_~tmp___1~3#1;havoc timeShift__wrappee__executivefloor_~tmp___2~3#1;havoc timeShift__wrappee__executivefloor_~tmp___3~3#1;havoc timeShift__wrappee__executivefloor_~tmp___4~2#1;havoc timeShift__wrappee__executivefloor_~tmp___5~2#1;havoc timeShift__wrappee__executivefloor_~tmp___6~2#1;havoc timeShift__wrappee__executivefloor_~tmp___7~2#1;havoc timeShift__wrappee__executivefloor_~tmp___8~2#1;havoc timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~17#1;havoc stopRequestedAtCurrentFloor_~tmp~13#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 838364#L2632 assume !(0 == isFloorCalling_~floorID#1); 838362#L2636 assume !(1 == isFloorCalling_~floorID#1); 838360#L2640 assume !(2 == isFloorCalling_~floorID#1); 838358#L2644 assume !(3 == isFloorCalling_~floorID#1); 838356#L2648 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 838354#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 838352#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~13#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1; 838349#L1417 assume 0 != stopRequestedAtCurrentFloor_~tmp~13#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 826485#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret60#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret60#1;havoc stopRequestedAtCurrentFloor_#t~ret60#1; 820913#L1421 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~5#1);stopRequestedAtCurrentFloor_~retValue_acc~17#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~17#1; 820914#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__executivefloor_#t~ret75#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_#t~ret61#1, stopRequestedAtCurrentFloor_#t~ret62#1, stopRequestedAtCurrentFloor_~retValue_acc~17#1, stopRequestedAtCurrentFloor_~tmp~13#1, stopRequestedAtCurrentFloor_~tmp___0~5#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__executivefloor_~tmp___9~2#1 := timeShift__wrappee__executivefloor_#t~ret75#1;havoc timeShift__wrappee__executivefloor_#t~ret75#1; 839141#L1569 assume !(0 != timeShift__wrappee__executivefloor_~tmp___9~2#1); 839129#L1660 assume 1 == ~doorState~0;~doorState~0 := 0; 839126#L1660-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~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#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~13#1;havoc stopRequestedInDirection_~tmp~9#1;havoc stopRequestedInDirection_~tmp___0~2#1;havoc stopRequestedInDirection_~__cil_tmp7~5#1;havoc stopRequestedInDirection_~__cil_tmp8~6#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;havoc isExecutiveFloorCalling_~retValue_acc~20#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~24#1; 839016#L2632-3 assume !(0 == isFloorCalling_~floorID#1); 839014#L2636-3 assume !(1 == isFloorCalling_~floorID#1); 839012#L2640-3 assume !(2 == isFloorCalling_~floorID#1); 839010#L2644-3 assume !(3 == isFloorCalling_~floorID#1); 839009#L2648-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~24#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~24#1; 839008#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret115#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~24#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~20#1 := isExecutiveFloorCalling_#t~ret115#1;havoc isExecutiveFloorCalling_#t~ret115#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~20#1; 839006#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret50#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret115#1, isExecutiveFloorCalling_~retValue_acc~20#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~2#1 := stopRequestedInDirection_#t~ret50#1;havoc stopRequestedInDirection_#t~ret50#1; 838869#L1272 assume 0 != stopRequestedInDirection_~tmp___0~2#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;havoc getCurrentFloorID_~retValue_acc~4#1;getCurrentFloorID_~retValue_acc~4#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~4#1; 838566#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret51#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~4#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~9#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~__cil_tmp7~5#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~6#1 := (if stopRequestedInDirection_~tmp~9#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~13#1 := (if stopRequestedInDirection_~__cil_tmp8~6#1 == stopRequestedInDirection_~__cil_tmp7~5#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~13#1; 838561#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__executivefloor_#t~ret82#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret50#1, stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~13#1, stopRequestedInDirection_~tmp~9#1, stopRequestedInDirection_~tmp___0~2#1, stopRequestedInDirection_~__cil_tmp7~5#1, stopRequestedInDirection_~__cil_tmp8~6#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__executivefloor_~tmp___8~2#1 := timeShift__wrappee__executivefloor_#t~ret82#1;havoc timeShift__wrappee__executivefloor_#t~ret82#1; 838515#L1668 assume 0 != timeShift__wrappee__executivefloor_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~10#1;~currentHeading~0 := continueInDirection_~dir#1; 838510#L1329 assume !(1 == ~currentHeading~0); 838507#L1339 assume !(0 == ~currentFloorID~0); 838504#L1339-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 838484#L1345-1 havoc continueInDirection_#t~ret53#1, continueInDirection_~dir#1, continueInDirection_~tmp~10#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 838483#L1677-2 havoc timeShift__wrappee__executivefloor_#t~ret75#1, timeShift__wrappee__executivefloor_#t~ret76#1, timeShift__wrappee__executivefloor_#t~ret77#1, timeShift__wrappee__executivefloor_#t~ret78#1, timeShift__wrappee__executivefloor_#t~ret79#1, timeShift__wrappee__executivefloor_#t~ret80#1, timeShift__wrappee__executivefloor_#t~ret81#1, timeShift__wrappee__executivefloor_#t~ret82#1, timeShift__wrappee__executivefloor_#t~ret83#1, timeShift__wrappee__executivefloor_#t~ret84#1, timeShift__wrappee__executivefloor_#t~ret85#1, timeShift__wrappee__executivefloor_~tmp~15#1, timeShift__wrappee__executivefloor_~tmp___0~7#1, timeShift__wrappee__executivefloor_~tmp___1~3#1, timeShift__wrappee__executivefloor_~tmp___2~3#1, timeShift__wrappee__executivefloor_~tmp___3~3#1, timeShift__wrappee__executivefloor_~tmp___4~2#1, timeShift__wrappee__executivefloor_~tmp___5~2#1, timeShift__wrappee__executivefloor_~tmp___6~2#1, timeShift__wrappee__executivefloor_~tmp___7~2#1, timeShift__wrappee__executivefloor_~tmp___8~2#1, timeShift__wrappee__executivefloor_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__executivefloor } true; 838482#L1702-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret137#1, __utac_acc__Specification13_spec__2_#t~ret138#1, __utac_acc__Specification13_spec__2_#t~ret139#1, __utac_acc__Specification13_spec__2_#t~ret140#1, __utac_acc__Specification13_spec__2_#t~ret141#1, __utac_acc__Specification13_spec__2_#t~ret142#1, __utac_acc__Specification13_spec__2_~tmp~30#1, __utac_acc__Specification13_spec__2_~tmp___0~13#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;havoc __utac_acc__Specification13_spec__2_~tmp~30#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~13#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~8#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~7#1 / 3); 838392#L3236 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~8#1; 838393#L3237 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~19#1, existInLiftCallsInDirection_~i~0#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~19#1;havoc existInLiftCallsInDirection_~i~0#1;havoc existInLiftCallsInDirection_~i___0~0#1; 838481#L1922 assume !(1 == existInLiftCallsInDirection_~d#1); 838631#L1988 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 838632#L1992-2 [2024-10-13 17:30:19,127 INFO L747 eck$LassoCheckResult]: Loop: 838632#L1992-2 assume !false; 838629#L1993 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 838630#L1994 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 838628#L2001-2 assume !false; 838626#L2002 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 838627#L2060 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 838632#L1992-2 [2024-10-13 17:30:19,128 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:19,128 INFO L85 PathProgramCache]: Analyzing trace with hash -1582324856, now seen corresponding path program 1 times [2024-10-13 17:30:19,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:19,128 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [272703671] [2024-10-13 17:30:19,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:19,128 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:19,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-13 17:30:19,189 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-13 17:30:19,189 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-13 17:30:19,189 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [272703671] [2024-10-13 17:30:19,190 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [272703671] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-13 17:30:19,190 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-13 17:30:19,190 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-13 17:30:19,190 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2143263049] [2024-10-13 17:30:19,190 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-13 17:30:19,190 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-10-13 17:30:19,190 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-13 17:30:19,190 INFO L85 PathProgramCache]: Analyzing trace with hash 954762475, now seen corresponding path program 12 times [2024-10-13 17:30:19,191 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-13 17:30:19,191 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1655618677] [2024-10-13 17:30:19,191 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-13 17:30:19,191 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-13 17:30:19,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:19,199 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-13 17:30:19,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-13 17:30:19,205 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-13 17:30:19,218 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-13 17:30:19,219 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-13 17:30:19,219 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-13 17:30:19,219 INFO L87 Difference]: Start difference. First operand 55912 states and 100981 transitions. cyclomatic complexity: 45337 Second operand has 4 states, 4 states have (on average 20.5) internal successors, (82), 4 states have internal predecessors, (82), 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)