./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version e2fb8bed Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/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.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-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(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 5cffec752d7227a7c562d34741b774370eecd95bc2cbcd3f61eafcd9579c5c4e --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 16:57:01,212 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 16:57:01,254 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-08 16:57:01,258 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 16:57:01,260 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 16:57:01,282 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 16:57:01,283 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 16:57:01,283 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 16:57:01,283 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 16:57:01,284 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 16:57:01,284 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 16:57:01,284 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 16:57:01,284 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 16:57:01,285 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 16:57:01,285 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 16:57:01,285 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 16:57:01,285 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 16:57:01,285 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 16:57:01,285 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-08 16:57:01,285 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 16:57:01,285 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 16:57:01,286 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 16:57:01,286 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 16:57:01,287 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 16:57:01,287 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:57:01,287 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 16:57:01,287 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 16:57:01,287 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 16:57:01,287 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 16:57:01,288 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-08 16:57:01,288 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-08 16:57:01,288 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 16:57:01,288 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 16:57:01,288 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 16:57:01,288 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 16:57:01,288 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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(G ! call(reach_error())) ) 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 -> 5cffec752d7227a7c562d34741b774370eecd95bc2cbcd3f61eafcd9579c5c4e [2025-03-08 16:57:01,506 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 16:57:01,515 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 16:57:01,516 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 16:57:01,517 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 16:57:01,517 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 16:57:01,518 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i [2025-03-08 16:57:02,624 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/03a90cc92/9e0ae90c6ac94897863175a640e09c34/FLAGd6d1f2474 [2025-03-08 16:57:02,880 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 16:57:02,880 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i [2025-03-08 16:57:02,896 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/03a90cc92/9e0ae90c6ac94897863175a640e09c34/FLAGd6d1f2474 [2025-03-08 16:57:03,194 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/03a90cc92/9e0ae90c6ac94897863175a640e09c34 [2025-03-08 16:57:03,196 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 16:57:03,197 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 16:57:03,198 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 16:57:03,198 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 16:57:03,200 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 16:57:03,201 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,201 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@537861 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03, skipping insertion in model container [2025-03-08 16:57:03,201 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,213 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 16:57:03,309 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i[916,929] [2025-03-08 16:57:03,360 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:57:03,369 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 16:57:03,377 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i[916,929] [2025-03-08 16:57:03,403 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:57:03,419 INFO L204 MainTranslator]: Completed translation [2025-03-08 16:57:03,420 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03 WrapperNode [2025-03-08 16:57:03,420 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 16:57:03,420 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 16:57:03,421 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 16:57:03,421 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 16:57:03,424 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,436 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,469 INFO L138 Inliner]: procedures = 30, calls = 164, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 553 [2025-03-08 16:57:03,470 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 16:57:03,471 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 16:57:03,471 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 16:57:03,471 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 16:57:03,478 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,478 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,486 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,494 WARN L109 MemorySlicer]: Omit memory slicing because it failed with the following exception: Unsupported: Memory array in LHS [2025-03-08 16:57:03,495 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,495 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,515 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,521 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,522 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,526 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,529 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 16:57:03,533 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 16:57:03,533 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 16:57:03,533 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 16:57:03,534 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (1/1) ... [2025-03-08 16:57:03,541 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:57:03,550 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 16:57:03,562 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-08 16:57:03,564 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-08 16:57:03,578 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~real [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 16:57:03,579 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 16:57:03,579 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2025-03-08 16:57:03,580 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 16:57:03,580 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 16:57:03,662 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 16:57:03,664 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 16:57:04,048 INFO L1307 $ProcedureCfgBuilder]: dead code at ProgramPoint L106: havoc property_#t~mem104#1;havoc property_#t~mem105#1;havoc property_#t~ite118#1;havoc property_#t~mem106#1;havoc property_#t~mem107#1;havoc property_#t~ite110#1;havoc property_#t~mem108#1;havoc property_#t~mem109#1;havoc property_#t~mem111#1;havoc property_#t~ite116#1;havoc property_#t~mem113#1;havoc property_#t~mem112#1;havoc property_#t~mem115#1;havoc property_#t~mem114#1;havoc property_#t~mem117#1;havoc property_#t~mem126#1;havoc property_#t~mem119#1;havoc property_#t~mem120#1;havoc property_#t~mem121#1;havoc property_#t~ite125#1;havoc property_#t~mem122#1;havoc property_#t~mem123#1;havoc property_#t~mem124#1;havoc property_#t~ite130#1;havoc property_#t~mem127#1;havoc property_#t~mem129#1;havoc property_#t~mem128#1;havoc property_#t~short131#1;havoc property_#t~mem132#1;havoc property_#t~mem133#1;havoc property_#t~ite156#1;havoc property_#t~mem137#1;havoc property_#t~mem134#1;havoc property_#t~mem135#1;havoc property_#t~short136#1;havoc property_#t~mem138#1;havoc property_#t~mem139#1;havoc property_#t~mem140#1;havoc property_#t~mem141#1;havoc property_#t~ite144#1;havoc property_#t~mem142#1;havoc property_#t~mem143#1;havoc property_#t~mem145#1;havoc property_#t~ite152#1;havoc property_#t~mem146#1;havoc property_#t~mem147#1;havoc property_#t~ite150#1;havoc property_#t~mem148#1;havoc property_#t~mem149#1;havoc property_#t~mem151#1;havoc property_#t~ite155#1;havoc property_#t~mem154#1;havoc property_#t~mem153#1;havoc property_#t~short157#1; [2025-03-08 16:57:04,103 INFO L? ?]: Removed 146 outVars from TransFormulas that were not future-live. [2025-03-08 16:57:04,103 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 16:57:04,114 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 16:57:04,115 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 16:57:04,116 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:57:04 BoogieIcfgContainer [2025-03-08 16:57:04,116 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 16:57:04,118 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 16:57:04,118 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 16:57:04,121 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 16:57:04,122 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 04:57:03" (1/3) ... [2025-03-08 16:57:04,122 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@657b2302 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:57:04, skipping insertion in model container [2025-03-08 16:57:04,123 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:03" (2/3) ... [2025-03-08 16:57:04,123 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@657b2302 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:57:04, skipping insertion in model container [2025-03-08 16:57:04,123 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:57:04" (3/3) ... [2025-03-08 16:57:04,124 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_wrapper-s_file-93.i [2025-03-08 16:57:04,133 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 16:57:04,134 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_wrapper-s_file-93.i that has 2 procedures, 118 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 16:57:04,178 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 16:57:04,186 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@5c51247e, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 16:57:04,186 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 16:57:04,191 INFO L276 IsEmpty]: Start isEmpty. Operand has 118 states, 101 states have (on average 1.4554455445544554) internal successors, (147), 102 states have internal predecessors, (147), 14 states have call successors, (14), 1 states have call predecessors, (14), 1 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2025-03-08 16:57:04,200 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 127 [2025-03-08 16:57:04,200 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:57:04,201 INFO L218 NwaCegarLoop]: trace histogram [14, 14, 14, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:57:04,201 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:57:04,205 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:57:04,206 INFO L85 PathProgramCache]: Analyzing trace with hash -2016014805, now seen corresponding path program 1 times [2025-03-08 16:57:04,211 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 16:57:04,212 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [263286704] [2025-03-08 16:57:04,212 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:57:04,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 16:57:04,322 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 126 statements into 1 equivalence classes. [2025-03-08 16:57:04,361 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 126 of 126 statements. [2025-03-08 16:57:04,362 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:57:04,363 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:57:04,477 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 338 trivial. 0 not checked. [2025-03-08 16:57:04,477 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 16:57:04,478 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [263286704] [2025-03-08 16:57:04,478 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [263286704] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 16:57:04,478 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1697900879] [2025-03-08 16:57:04,478 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:57:04,478 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 16:57:04,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 16:57:04,480 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-08 16:57:04,482 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-08 16:57:04,606 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 126 statements into 1 equivalence classes. [2025-03-08 16:57:04,669 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 126 of 126 statements. [2025-03-08 16:57:04,669 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:57:04,669 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:57:04,672 INFO L256 TraceCheckSpWp]: Trace formula consists of 448 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 16:57:04,678 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 16:57:04,692 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 26 proven. 0 refuted. 0 times theorem prover too weak. 338 trivial. 0 not checked. [2025-03-08 16:57:04,695 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 16:57:04,695 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1697900879] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 16:57:04,695 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-08 16:57:04,696 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-08 16:57:04,697 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2045774322] [2025-03-08 16:57:04,697 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 16:57:04,700 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 16:57:04,700 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 16:57:04,711 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 16:57:04,711 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 16:57:04,713 INFO L87 Difference]: Start difference. First operand has 118 states, 101 states have (on average 1.4554455445544554) internal successors, (147), 102 states have internal predecessors, (147), 14 states have call successors, (14), 1 states have call predecessors, (14), 1 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand has 2 states, 2 states have (on average 30.5) internal successors, (61), 2 states have internal predecessors, (61), 2 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (14), 1 states have call predecessors, (14), 2 states have call successors, (14) [2025-03-08 16:57:04,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 16:57:04,735 INFO L93 Difference]: Finished difference Result 230 states and 359 transitions. [2025-03-08 16:57:04,735 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 16:57:04,736 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 30.5) internal successors, (61), 2 states have internal predecessors, (61), 2 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (14), 1 states have call predecessors, (14), 2 states have call successors, (14) Word has length 126 [2025-03-08 16:57:04,737 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 16:57:04,740 INFO L225 Difference]: With dead ends: 230 [2025-03-08 16:57:04,741 INFO L226 Difference]: Without dead ends: 115 [2025-03-08 16:57:04,743 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 127 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 16:57:04,744 INFO L435 NwaCegarLoop]: 170 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-08 16:57:04,746 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 16:57:04,754 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2025-03-08 16:57:04,770 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 115. [2025-03-08 16:57:04,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 115 states, 99 states have (on average 1.4343434343434343) internal successors, (142), 99 states have internal predecessors, (142), 14 states have call successors, (14), 1 states have call predecessors, (14), 1 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2025-03-08 16:57:04,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 115 states to 115 states and 170 transitions. [2025-03-08 16:57:04,778 INFO L78 Accepts]: Start accepts. Automaton has 115 states and 170 transitions. Word has length 126 [2025-03-08 16:57:04,779 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 16:57:04,779 INFO L471 AbstractCegarLoop]: Abstraction has 115 states and 170 transitions. [2025-03-08 16:57:04,779 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 30.5) internal successors, (61), 2 states have internal predecessors, (61), 2 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (14), 1 states have call predecessors, (14), 2 states have call successors, (14) [2025-03-08 16:57:04,779 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 170 transitions. [2025-03-08 16:57:04,781 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 127 [2025-03-08 16:57:04,782 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:57:04,782 INFO L218 NwaCegarLoop]: trace histogram [14, 14, 14, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:57:04,789 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-03-08 16:57:04,982 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-03-08 16:57:04,983 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:57:04,983 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:57:04,983 INFO L85 PathProgramCache]: Analyzing trace with hash 486251633, now seen corresponding path program 1 times [2025-03-08 16:57:04,983 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 16:57:04,984 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2119654836] [2025-03-08 16:57:04,984 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:57:04,984 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 16:57:05,014 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 126 statements into 1 equivalence classes. [2025-03-08 16:57:05,123 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 126 of 126 statements. [2025-03-08 16:57:05,126 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:57:05,126 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 16:57:05,126 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-08 16:57:05,140 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 126 statements into 1 equivalence classes. [2025-03-08 16:57:05,197 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 126 of 126 statements. [2025-03-08 16:57:05,197 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:57:05,197 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 16:57:05,231 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-08 16:57:05,231 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-08 16:57:05,232 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-08 16:57:05,233 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-08 16:57:05,235 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-08 16:57:05,287 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-08 16:57:05,290 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.03 04:57:05 BoogieIcfgContainer [2025-03-08 16:57:05,291 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-08 16:57:05,291 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-08 16:57:05,292 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-08 16:57:05,292 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-08 16:57:05,293 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:57:04" (3/4) ... [2025-03-08 16:57:05,294 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-08 16:57:05,295 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-08 16:57:05,296 INFO L158 Benchmark]: Toolchain (without parser) took 2098.73ms. Allocated memory is still 142.6MB. Free memory was 111.7MB in the beginning and 82.1MB in the end (delta: 29.6MB). Peak memory consumption was 32.6MB. Max. memory is 16.1GB. [2025-03-08 16:57:05,296 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 201.3MB. Free memory is still 126.4MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:57:05,296 INFO L158 Benchmark]: CACSL2BoogieTranslator took 222.47ms. Allocated memory is still 142.6MB. Free memory was 111.7MB in the beginning and 95.6MB in the end (delta: 16.1MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-08 16:57:05,296 INFO L158 Benchmark]: Boogie Procedure Inliner took 50.10ms. Allocated memory is still 142.6MB. Free memory was 95.6MB in the beginning and 91.4MB in the end (delta: 4.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:57:05,297 INFO L158 Benchmark]: Boogie Preprocessor took 61.44ms. Allocated memory is still 142.6MB. Free memory was 91.4MB in the beginning and 88.3MB in the end (delta: 3.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 16:57:05,298 INFO L158 Benchmark]: IcfgBuilder took 583.46ms. Allocated memory is still 142.6MB. Free memory was 88.3MB in the beginning and 56.9MB in the end (delta: 31.4MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-08 16:57:05,298 INFO L158 Benchmark]: TraceAbstraction took 1172.96ms. Allocated memory is still 142.6MB. Free memory was 55.8MB in the beginning and 82.1MB in the end (delta: -26.4MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:57:05,298 INFO L158 Benchmark]: Witness Printer took 3.51ms. Allocated memory is still 142.6MB. Free memory was 82.1MB in the beginning and 82.1MB in the end (delta: 32.3kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 16:57:05,299 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 201.3MB. Free memory is still 126.4MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 222.47ms. Allocated memory is still 142.6MB. Free memory was 111.7MB in the beginning and 95.6MB in the end (delta: 16.1MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 50.10ms. Allocated memory is still 142.6MB. Free memory was 95.6MB in the beginning and 91.4MB in the end (delta: 4.2MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 61.44ms. Allocated memory is still 142.6MB. Free memory was 91.4MB in the beginning and 88.3MB in the end (delta: 3.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 583.46ms. Allocated memory is still 142.6MB. Free memory was 88.3MB in the beginning and 56.9MB in the end (delta: 31.4MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * TraceAbstraction took 1172.96ms. Allocated memory is still 142.6MB. Free memory was 55.8MB in the beginning and 82.1MB in the end (delta: -26.4MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 3.51ms. Allocated memory is still 142.6MB. Free memory was 82.1MB in the beginning and 82.1MB in the end (delta: 32.3kB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryArithmeticDOUBLEoperation at line 64, overapproximation of someBinaryFLOATComparisonOperation at line 91, overapproximation of someBinaryFLOATComparisonOperation at line 106, overapproximation of someBinaryFLOATComparisonOperation at line 91, overapproximation of someUnaryDOUBLEoperation at line 39, overapproximation of someBinaryDOUBLEComparisonOperation at line 79, overapproximation of someBinaryDOUBLEComparisonOperation at line 80, overapproximation of someBinaryDOUBLEComparisonOperation at line 87, overapproximation of someBinaryDOUBLEComparisonOperation at line 64, overapproximation of someBinaryDOUBLEComparisonOperation at line 87, overapproximation of someBinaryDOUBLEComparisonOperation at line 55, overapproximation of someBinaryDOUBLEComparisonOperation at line 69, overapproximation of someBinaryDOUBLEComparisonOperation at line 79, overapproximation of someBinaryDOUBLEComparisonOperation at line 89, overapproximation of someBinaryDOUBLEComparisonOperation at line 64, overapproximation of someBinaryDOUBLEComparisonOperation at line 106, overapproximation of someBinaryDOUBLEComparisonOperation at line 83, overapproximation of someBinaryDOUBLEComparisonOperation at line 85, overapproximation of someBinaryDOUBLEComparisonOperation at line 82, overapproximation of someBinaryDOUBLEComparisonOperation at line 85, overapproximation of someBinaryDOUBLEComparisonOperation at line 82, overapproximation of someBinaryDOUBLEComparisonOperation at line 89. Possible FailurePath: [L36] unsigned char isInitial = 0; [L37-L50] struct WrapperStruct00 WrapperStruct00 = { 255.3, -0.9, 128.5, 9.186, 31.75, 9.6, 499.2, 1.5, 0, 1, 0, 1 }; [L51] float last_1_WrapperStruct00_var_1_10 = 1.5; VAL [WrapperStruct00={4:0}, isInitial=0, last_1_WrapperStruct00_var_1_10=3/2] [L110] isInitial = 1 [L111] FCALL initially() [L112] COND TRUE 1 [L113] CALL updateLastVariables() [L103] EXPR WrapperStruct00.var_1_10 [L103] last_1_WrapperStruct00_var_1_10 = WrapperStruct00.var_1_10 [L113] RET updateLastVariables() [L114] CALL updateVariables() [L78] WrapperStruct00.var_1_3 = __VERIFIER_nondet_double() [L79] EXPR WrapperStruct00.var_1_3 [L79] EXPR WrapperStruct00.var_1_3 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_3 <= -1.0e-20F [L79] EXPR WrapperStruct00.var_1_3 [L79] EXPR WrapperStruct00.var_1_3 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_3 <= -1.0e-20F VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L79] EXPR (WrapperStruct00.var_1_3 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_3 <= -1.0e-20F) || (WrapperStruct00.var_1_3 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_3 >= 1.0e-20F ) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L79] CALL assume_abort_if_not((WrapperStruct00.var_1_3 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_3 <= -1.0e-20F) || (WrapperStruct00.var_1_3 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_3 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L79] RET assume_abort_if_not((WrapperStruct00.var_1_3 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_3 <= -1.0e-20F) || (WrapperStruct00.var_1_3 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_3 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L80] EXPR WrapperStruct00.var_1_3 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L80] CALL assume_abort_if_not(WrapperStruct00.var_1_3 != 0.0F) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L80] RET assume_abort_if_not(WrapperStruct00.var_1_3 != 0.0F) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L81] WrapperStruct00.var_1_5 = __VERIFIER_nondet_double() [L82] EXPR WrapperStruct00.var_1_5 [L82] EXPR WrapperStruct00.var_1_5 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_5 <= -1.0e-20F [L82] EXPR WrapperStruct00.var_1_5 [L82] EXPR WrapperStruct00.var_1_5 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_5 <= -1.0e-20F VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L82] EXPR (WrapperStruct00.var_1_5 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_5 <= -1.0e-20F) || (WrapperStruct00.var_1_5 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_5 >= 1.0e-20F ) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L82] CALL assume_abort_if_not((WrapperStruct00.var_1_5 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_5 <= -1.0e-20F) || (WrapperStruct00.var_1_5 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_5 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L82] RET assume_abort_if_not((WrapperStruct00.var_1_5 >= -922337.2036854776000e+13F && WrapperStruct00.var_1_5 <= -1.0e-20F) || (WrapperStruct00.var_1_5 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_5 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L83] EXPR WrapperStruct00.var_1_5 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L83] CALL assume_abort_if_not(WrapperStruct00.var_1_5 != 0.0F) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L83] RET assume_abort_if_not(WrapperStruct00.var_1_5 != 0.0F) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L84] WrapperStruct00.var_1_6 = __VERIFIER_nondet_double() [L85] EXPR WrapperStruct00.var_1_6 [L85] EXPR WrapperStruct00.var_1_6 >= 0.0F && WrapperStruct00.var_1_6 <= -1.0e-20F [L85] EXPR WrapperStruct00.var_1_6 [L85] EXPR WrapperStruct00.var_1_6 >= 0.0F && WrapperStruct00.var_1_6 <= -1.0e-20F VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L85] EXPR (WrapperStruct00.var_1_6 >= 0.0F && WrapperStruct00.var_1_6 <= -1.0e-20F) || (WrapperStruct00.var_1_6 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_6 >= 1.0e-20F ) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L85] CALL assume_abort_if_not((WrapperStruct00.var_1_6 >= 0.0F && WrapperStruct00.var_1_6 <= -1.0e-20F) || (WrapperStruct00.var_1_6 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_6 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L85] RET assume_abort_if_not((WrapperStruct00.var_1_6 >= 0.0F && WrapperStruct00.var_1_6 <= -1.0e-20F) || (WrapperStruct00.var_1_6 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_6 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L86] WrapperStruct00.var_1_7 = __VERIFIER_nondet_double() [L87] EXPR WrapperStruct00.var_1_7 [L87] EXPR WrapperStruct00.var_1_7 >= 0.0F && WrapperStruct00.var_1_7 <= -1.0e-20F [L87] EXPR WrapperStruct00.var_1_7 [L87] EXPR WrapperStruct00.var_1_7 >= 0.0F && WrapperStruct00.var_1_7 <= -1.0e-20F VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L87] EXPR (WrapperStruct00.var_1_7 >= 0.0F && WrapperStruct00.var_1_7 <= -1.0e-20F) || (WrapperStruct00.var_1_7 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_7 >= 1.0e-20F ) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L87] CALL assume_abort_if_not((WrapperStruct00.var_1_7 >= 0.0F && WrapperStruct00.var_1_7 <= -1.0e-20F) || (WrapperStruct00.var_1_7 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_7 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L87] RET assume_abort_if_not((WrapperStruct00.var_1_7 >= 0.0F && WrapperStruct00.var_1_7 <= -1.0e-20F) || (WrapperStruct00.var_1_7 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_7 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L88] WrapperStruct00.var_1_8 = __VERIFIER_nondet_double() [L89] EXPR WrapperStruct00.var_1_8 [L89] EXPR WrapperStruct00.var_1_8 >= 0.0F && WrapperStruct00.var_1_8 <= -1.0e-20F [L89] EXPR WrapperStruct00.var_1_8 [L89] EXPR WrapperStruct00.var_1_8 >= 0.0F && WrapperStruct00.var_1_8 <= -1.0e-20F VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L89] EXPR (WrapperStruct00.var_1_8 >= 0.0F && WrapperStruct00.var_1_8 <= -1.0e-20F) || (WrapperStruct00.var_1_8 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_8 >= 1.0e-20F ) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L89] CALL assume_abort_if_not((WrapperStruct00.var_1_8 >= 0.0F && WrapperStruct00.var_1_8 <= -1.0e-20F) || (WrapperStruct00.var_1_8 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_8 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L89] RET assume_abort_if_not((WrapperStruct00.var_1_8 >= 0.0F && WrapperStruct00.var_1_8 <= -1.0e-20F) || (WrapperStruct00.var_1_8 <= 9223372.036854776000e+12F && WrapperStruct00.var_1_8 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L90] WrapperStruct00.var_1_9 = __VERIFIER_nondet_float() [L91] EXPR WrapperStruct00.var_1_9 [L91] EXPR WrapperStruct00.var_1_9 >= -922337.2036854765600e+13F && WrapperStruct00.var_1_9 <= -1.0e-20F [L91] EXPR WrapperStruct00.var_1_9 [L91] EXPR WrapperStruct00.var_1_9 >= -922337.2036854765600e+13F && WrapperStruct00.var_1_9 <= -1.0e-20F VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L91] EXPR (WrapperStruct00.var_1_9 >= -922337.2036854765600e+13F && WrapperStruct00.var_1_9 <= -1.0e-20F) || (WrapperStruct00.var_1_9 <= 9223372.036854765600e+12F && WrapperStruct00.var_1_9 >= 1.0e-20F ) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L91] CALL assume_abort_if_not((WrapperStruct00.var_1_9 >= -922337.2036854765600e+13F && WrapperStruct00.var_1_9 <= -1.0e-20F) || (WrapperStruct00.var_1_9 <= 9223372.036854765600e+12F && WrapperStruct00.var_1_9 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L91] RET assume_abort_if_not((WrapperStruct00.var_1_9 >= -922337.2036854765600e+13F && WrapperStruct00.var_1_9 <= -1.0e-20F) || (WrapperStruct00.var_1_9 <= 9223372.036854765600e+12F && WrapperStruct00.var_1_9 >= 1.0e-20F )) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L92] WrapperStruct00.var_1_12 = __VERIFIER_nondet_uchar() [L93] EXPR WrapperStruct00.var_1_12 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L93] CALL assume_abort_if_not(WrapperStruct00.var_1_12 >= 0) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L93] RET assume_abort_if_not(WrapperStruct00.var_1_12 >= 0) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L94] EXPR WrapperStruct00.var_1_12 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L94] CALL assume_abort_if_not(WrapperStruct00.var_1_12 <= 1) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L94] RET assume_abort_if_not(WrapperStruct00.var_1_12 <= 1) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L95] WrapperStruct00.var_1_13 = __VERIFIER_nondet_uchar() [L96] EXPR WrapperStruct00.var_1_13 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L96] CALL assume_abort_if_not(WrapperStruct00.var_1_13 >= 0) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L96] RET assume_abort_if_not(WrapperStruct00.var_1_13 >= 0) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L97] EXPR WrapperStruct00.var_1_13 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L97] CALL assume_abort_if_not(WrapperStruct00.var_1_13 <= 0) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L97] RET assume_abort_if_not(WrapperStruct00.var_1_13 <= 0) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L98] WrapperStruct00.var_1_14 = __VERIFIER_nondet_uchar() [L99] EXPR WrapperStruct00.var_1_14 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L99] CALL assume_abort_if_not(WrapperStruct00.var_1_14 >= 1) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L99] RET assume_abort_if_not(WrapperStruct00.var_1_14 >= 1) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L100] EXPR WrapperStruct00.var_1_14 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L100] CALL assume_abort_if_not(WrapperStruct00.var_1_14 <= 1) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L20] COND FALSE !(!cond) VAL [WrapperStruct00={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L100] RET assume_abort_if_not(WrapperStruct00.var_1_14 <= 1) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L114] RET updateVariables() [L115] CALL step() [L55] EXPR WrapperStruct00.var_1_3 [L55] EXPR WrapperStruct00.var_1_5 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L55] COND FALSE !(((- last_1_WrapperStruct00_var_1_10) / WrapperStruct00.var_1_3) != (last_1_WrapperStruct00_var_1_10 / WrapperStruct00.var_1_5)) [L62] WrapperStruct00.var_1_1 = 64.51f VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L64] EXPR WrapperStruct00.var_1_1 [L64] EXPR WrapperStruct00.var_1_9 [L64] EXPR WrapperStruct00.var_1_5 [L64] EXPR WrapperStruct00.var_1_1 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L64] EXPR (((WrapperStruct00.var_1_9 * 128.4)) > ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))) ? ((WrapperStruct00.var_1_9 * 128.4)) : ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1)) [L64] EXPR WrapperStruct00.var_1_9 [L64] EXPR (((WrapperStruct00.var_1_9 * 128.4)) > ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))) ? ((WrapperStruct00.var_1_9 * 128.4)) : ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1)) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L64] COND TRUE WrapperStruct00.var_1_1 > (((((WrapperStruct00.var_1_9 * 128.4)) > ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))) ? ((WrapperStruct00.var_1_9 * 128.4)) : ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1)))) [L65] WrapperStruct00.var_1_10 = 1.00000000000004E13f VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L69] EXPR WrapperStruct00.var_1_3 [L69] EXPR WrapperStruct00.var_1_10 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L69] COND TRUE ! (WrapperStruct00.var_1_3 <= WrapperStruct00.var_1_10) [L70] EXPR WrapperStruct00.var_1_12 [L70] EXPR WrapperStruct00.var_1_12 && WrapperStruct00.var_1_13 [L70] EXPR WrapperStruct00.var_1_13 [L70] EXPR WrapperStruct00.var_1_12 && WrapperStruct00.var_1_13 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L70] WrapperStruct00.var_1_11 = (WrapperStruct00.var_1_12 && WrapperStruct00.var_1_13) [L115] RET step() [L116] CALL, EXPR property() [L106] EXPR WrapperStruct00.var_1_3 [L106] EXPR WrapperStruct00.var_1_5 VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L106] EXPR (((- last_1_WrapperStruct00_var_1_10) / WrapperStruct00.var_1_3) != (last_1_WrapperStruct00_var_1_10 / WrapperStruct00.var_1_5)) ? ((last_1_WrapperStruct00_var_1_10 != (((((WrapperStruct00.var_1_6) > (WrapperStruct00.var_1_7)) ? (WrapperStruct00.var_1_6) : (WrapperStruct00.var_1_7))) - WrapperStruct00.var_1_8)) ? (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9)) : (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9))) : (WrapperStruct00.var_1_1 == ((float) 64.51f)) [L106] EXPR WrapperStruct00.var_1_1 [L106] EXPR (((- last_1_WrapperStruct00_var_1_10) / WrapperStruct00.var_1_3) != (last_1_WrapperStruct00_var_1_10 / WrapperStruct00.var_1_5)) ? ((last_1_WrapperStruct00_var_1_10 != (((((WrapperStruct00.var_1_6) > (WrapperStruct00.var_1_7)) ? (WrapperStruct00.var_1_6) : (WrapperStruct00.var_1_7))) - WrapperStruct00.var_1_8)) ? (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9)) : (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9))) : (WrapperStruct00.var_1_1 == ((float) 64.51f)) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L106] EXPR ((((- last_1_WrapperStruct00_var_1_10) / WrapperStruct00.var_1_3) != (last_1_WrapperStruct00_var_1_10 / WrapperStruct00.var_1_5)) ? ((last_1_WrapperStruct00_var_1_10 != (((((WrapperStruct00.var_1_6) > (WrapperStruct00.var_1_7)) ? (WrapperStruct00.var_1_6) : (WrapperStruct00.var_1_7))) - WrapperStruct00.var_1_8)) ? (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9)) : (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9))) : (WrapperStruct00.var_1_1 == ((float) 64.51f))) && ((WrapperStruct00.var_1_1 > (((((WrapperStruct00.var_1_9 * 128.4)) > ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))) ? ((WrapperStruct00.var_1_9 * 128.4)) : ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))))) ? (WrapperStruct00.var_1_10 == ((float) 1.00000000000004E13f)) : (WrapperStruct00.var_1_10 == ((float) WrapperStruct00.var_1_9))) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L106] EXPR (((((- last_1_WrapperStruct00_var_1_10) / WrapperStruct00.var_1_3) != (last_1_WrapperStruct00_var_1_10 / WrapperStruct00.var_1_5)) ? ((last_1_WrapperStruct00_var_1_10 != (((((WrapperStruct00.var_1_6) > (WrapperStruct00.var_1_7)) ? (WrapperStruct00.var_1_6) : (WrapperStruct00.var_1_7))) - WrapperStruct00.var_1_8)) ? (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9)) : (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9))) : (WrapperStruct00.var_1_1 == ((float) 64.51f))) && ((WrapperStruct00.var_1_1 > (((((WrapperStruct00.var_1_9 * 128.4)) > ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))) ? ((WrapperStruct00.var_1_9 * 128.4)) : ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))))) ? (WrapperStruct00.var_1_10 == ((float) 1.00000000000004E13f)) : (WrapperStruct00.var_1_10 == ((float) WrapperStruct00.var_1_9)))) && ((! (WrapperStruct00.var_1_3 <= WrapperStruct00.var_1_10)) ? (WrapperStruct00.var_1_11 == ((unsigned char) (WrapperStruct00.var_1_12 && WrapperStruct00.var_1_13))) : (((WrapperStruct00.var_1_7 / WrapperStruct00.var_1_3) < ((((((((WrapperStruct00.var_1_8) > (WrapperStruct00.var_1_6)) ? (WrapperStruct00.var_1_8) : (WrapperStruct00.var_1_6)))) < (WrapperStruct00.var_1_5)) ? (((((WrapperStruct00.var_1_8) > (WrapperStruct00.var_1_6)) ? (WrapperStruct00.var_1_8) : (WrapperStruct00.var_1_6)))) : (WrapperStruct00.var_1_5)))) ? (WrapperStruct00.var_1_11 == ((unsigned char) WrapperStruct00.var_1_14)) : 1)) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L106-L107] return (((((- last_1_WrapperStruct00_var_1_10) / WrapperStruct00.var_1_3) != (last_1_WrapperStruct00_var_1_10 / WrapperStruct00.var_1_5)) ? ((last_1_WrapperStruct00_var_1_10 != (((((WrapperStruct00.var_1_6) > (WrapperStruct00.var_1_7)) ? (WrapperStruct00.var_1_6) : (WrapperStruct00.var_1_7))) - WrapperStruct00.var_1_8)) ? (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9)) : (WrapperStruct00.var_1_1 == ((float) WrapperStruct00.var_1_9))) : (WrapperStruct00.var_1_1 == ((float) 64.51f))) && ((WrapperStruct00.var_1_1 > (((((WrapperStruct00.var_1_9 * 128.4)) > ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))) ? ((WrapperStruct00.var_1_9 * 128.4)) : ((WrapperStruct00.var_1_5 * WrapperStruct00.var_1_1))))) ? (WrapperStruct00.var_1_10 == ((float) 1.00000000000004E13f)) : (WrapperStruct00.var_1_10 == ((float) WrapperStruct00.var_1_9)))) && ((! (WrapperStruct00.var_1_3 <= WrapperStruct00.var_1_10)) ? (WrapperStruct00.var_1_11 == ((unsigned char) (WrapperStruct00.var_1_12 && WrapperStruct00.var_1_13))) : (((WrapperStruct00.var_1_7 / WrapperStruct00.var_1_3) < ((((((((WrapperStruct00.var_1_8) > (WrapperStruct00.var_1_6)) ? (WrapperStruct00.var_1_8) : (WrapperStruct00.var_1_6)))) < (WrapperStruct00.var_1_5)) ? (((((WrapperStruct00.var_1_8) > (WrapperStruct00.var_1_6)) ? (WrapperStruct00.var_1_8) : (WrapperStruct00.var_1_6)))) : (WrapperStruct00.var_1_5)))) ? (WrapperStruct00.var_1_11 == ((unsigned char) WrapperStruct00.var_1_14)) : 1)) ; [L116] RET, EXPR property() [L116] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] [L19] reach_error() VAL [WrapperStruct00={4:0}, isInitial=1, last_1_WrapperStruct00_var_1_10=3/2] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 118 locations, 189 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.1s, OverallIterations: 2, TraceHistogramMax: 14, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 170 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 170 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 127 GetRequests, 127 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=118occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 378 NumberOfCodeBlocks, 378 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 250 ConstructedInterpolants, 0 QuantifiedInterpolants, 250 SizeOfPredicates, 0 NumberOfNonLiveVariables, 448 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 702/728 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2025-03-08 16:57:05,313 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/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.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.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(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 5cffec752d7227a7c562d34741b774370eecd95bc2cbcd3f61eafcd9579c5c4e --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 16:57:07,050 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 16:57:07,142 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-08 16:57:07,147 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 16:57:07,148 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 16:57:07,168 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 16:57:07,170 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 16:57:07,170 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 16:57:07,171 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 16:57:07,171 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 16:57:07,171 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 16:57:07,172 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 16:57:07,192 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 16:57:07,192 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 16:57:07,192 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 16:57:07,192 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 16:57:07,193 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 16:57:07,193 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:57:07,194 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 16:57:07,194 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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(G ! call(reach_error())) ) 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 -> 5cffec752d7227a7c562d34741b774370eecd95bc2cbcd3f61eafcd9579c5c4e [2025-03-08 16:57:07,410 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 16:57:07,418 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 16:57:07,420 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 16:57:07,421 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 16:57:07,422 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 16:57:07,423 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i [2025-03-08 16:57:08,544 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/42f2259ca/27bf89f4040c47fa8b05adde630ac1a1/FLAGf01d354d2 [2025-03-08 16:57:08,740 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 16:57:08,741 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i [2025-03-08 16:57:08,747 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/42f2259ca/27bf89f4040c47fa8b05adde630ac1a1/FLAGf01d354d2 [2025-03-08 16:57:08,763 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/42f2259ca/27bf89f4040c47fa8b05adde630ac1a1 [2025-03-08 16:57:08,765 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 16:57:08,766 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 16:57:08,766 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 16:57:08,766 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 16:57:08,770 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 16:57:08,771 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:08,773 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5d12dc15 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08, skipping insertion in model container [2025-03-08 16:57:08,773 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:08,789 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 16:57:08,885 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i[916,929] [2025-03-08 16:57:08,923 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:57:08,933 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 16:57:08,941 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-93.i[916,929] [2025-03-08 16:57:08,972 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 16:57:08,989 INFO L204 MainTranslator]: Completed translation [2025-03-08 16:57:08,990 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08 WrapperNode [2025-03-08 16:57:08,990 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 16:57:08,991 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 16:57:08,991 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 16:57:08,991 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 16:57:08,995 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,008 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,033 INFO L138 Inliner]: procedures = 34, calls = 164, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 552 [2025-03-08 16:57:09,034 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 16:57:09,034 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 16:57:09,034 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 16:57:09,034 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 16:57:09,040 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,041 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,046 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,060 INFO L175 MemorySlicer]: Split 139 memory accesses to 2 slices as follows [2, 137]. 99 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0]. The 29 writes are split as follows [0, 29]. [2025-03-08 16:57:09,061 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,061 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,086 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,091 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,093 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,098 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,104 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 16:57:09,105 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 16:57:09,105 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 16:57:09,105 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 16:57:09,106 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (1/1) ... [2025-03-08 16:57:09,110 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 16:57:09,120 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 16:57:09,131 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-08 16:57:09,133 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intFLOATTYPE8#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intFLOATTYPE8#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE4#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE4#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE4#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE4#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intINTTYPE1#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intINTTYPE1#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 16:57:09,150 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intFLOATTYPE4#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intFLOATTYPE4#1 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 16:57:09,150 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#0 [2025-03-08 16:57:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#1 [2025-03-08 16:57:09,270 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 16:57:09,273 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 16:58:05,041 INFO L1307 $ProcedureCfgBuilder]: dead code at ProgramPoint L106: havoc property_#t~mem104#1;havoc property_#t~mem105#1;havoc property_#t~ite118#1;havoc property_#t~mem106#1;havoc property_#t~mem107#1;havoc property_#t~ite110#1;havoc property_#t~mem108#1;havoc property_#t~mem109#1;havoc property_#t~mem111#1;havoc property_#t~ite116#1;havoc property_#t~mem113#1;havoc property_#t~mem112#1;havoc property_#t~mem115#1;havoc property_#t~mem114#1;havoc property_#t~mem117#1;havoc property_#t~mem126#1;havoc property_#t~mem119#1;havoc property_#t~mem120#1;havoc property_#t~mem121#1;havoc property_#t~ite125#1;havoc property_#t~mem122#1;havoc property_#t~mem123#1;havoc property_#t~mem124#1;havoc property_#t~ite130#1;havoc property_#t~mem127#1;havoc property_#t~mem129#1;havoc property_#t~mem128#1;havoc property_#t~short131#1;havoc property_#t~mem132#1;havoc property_#t~mem133#1;havoc property_#t~ite156#1;havoc property_#t~mem137#1;havoc property_#t~mem134#1;havoc property_#t~mem135#1;havoc property_#t~short136#1;havoc property_#t~mem138#1;havoc property_#t~mem139#1;havoc property_#t~mem140#1;havoc property_#t~mem141#1;havoc property_#t~ite144#1;havoc property_#t~mem142#1;havoc property_#t~mem143#1;havoc property_#t~mem145#1;havoc property_#t~ite152#1;havoc property_#t~mem146#1;havoc property_#t~mem147#1;havoc property_#t~ite150#1;havoc property_#t~mem148#1;havoc property_#t~mem149#1;havoc property_#t~mem151#1;havoc property_#t~ite155#1;havoc property_#t~mem154#1;havoc property_#t~mem153#1;havoc property_#t~short157#1; [2025-03-08 16:58:05,065 INFO L? ?]: Removed 162 outVars from TransFormulas that were not future-live. [2025-03-08 16:58:05,065 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 16:58:05,072 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 16:58:05,072 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 16:58:05,072 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:58:05 BoogieIcfgContainer [2025-03-08 16:58:05,072 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 16:58:05,074 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 16:58:05,074 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 16:58:05,077 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 16:58:05,077 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 04:57:08" (1/3) ... [2025-03-08 16:58:05,077 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@38ee78fd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:58:05, skipping insertion in model container [2025-03-08 16:58:05,078 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 04:57:08" (2/3) ... [2025-03-08 16:58:05,078 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@38ee78fd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 04:58:05, skipping insertion in model container [2025-03-08 16:58:05,078 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 04:58:05" (3/3) ... [2025-03-08 16:58:05,079 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_wrapper-s_file-93.i [2025-03-08 16:58:05,088 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 16:58:05,089 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_wrapper-s_file-93.i that has 2 procedures, 118 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 16:58:05,123 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 16:58:05,132 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@705562a4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 16:58:05,132 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 16:58:05,135 INFO L276 IsEmpty]: Start isEmpty. Operand has 118 states, 101 states have (on average 1.4554455445544554) internal successors, (147), 102 states have internal predecessors, (147), 14 states have call successors, (14), 1 states have call predecessors, (14), 1 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2025-03-08 16:58:05,143 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 127 [2025-03-08 16:58:05,143 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:58:05,144 INFO L218 NwaCegarLoop]: trace histogram [14, 14, 14, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:58:05,144 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:58:05,147 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:58:05,148 INFO L85 PathProgramCache]: Analyzing trace with hash 1260275353, now seen corresponding path program 1 times [2025-03-08 16:58:05,155 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 16:58:05,155 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [221775900] [2025-03-08 16:58:05,155 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:58:05,155 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-08 16:58:05,155 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 16:58:05,157 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-08 16:58:05,158 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2025-03-08 16:58:05,285 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 126 statements into 1 equivalence classes. [2025-03-08 16:58:08,083 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 126 of 126 statements. [2025-03-08 16:58:08,084 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:58:08,084 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:58:08,180 INFO L256 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 16:58:08,185 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 16:58:08,211 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 170 proven. 0 refuted. 0 times theorem prover too weak. 194 trivial. 0 not checked. [2025-03-08 16:58:08,211 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 16:58:08,211 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 16:58:08,212 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [221775900] [2025-03-08 16:58:08,212 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [221775900] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 16:58:08,212 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 16:58:08,212 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-08 16:58:08,213 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1527950826] [2025-03-08 16:58:08,214 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 16:58:08,216 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 16:58:08,216 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 16:58:08,228 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 16:58:08,228 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 16:58:08,230 INFO L87 Difference]: Start difference. First operand has 118 states, 101 states have (on average 1.4554455445544554) internal successors, (147), 102 states have internal predecessors, (147), 14 states have call successors, (14), 1 states have call predecessors, (14), 1 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand has 2 states, 2 states have (on average 31.5) internal successors, (63), 2 states have internal predecessors, (63), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (14), 2 states have call predecessors, (14), 2 states have call successors, (14) [2025-03-08 16:58:08,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 16:58:08,248 INFO L93 Difference]: Finished difference Result 230 states and 359 transitions. [2025-03-08 16:58:08,249 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 16:58:08,250 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 31.5) internal successors, (63), 2 states have internal predecessors, (63), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (14), 2 states have call predecessors, (14), 2 states have call successors, (14) Word has length 126 [2025-03-08 16:58:08,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 16:58:08,269 INFO L225 Difference]: With dead ends: 230 [2025-03-08 16:58:08,269 INFO L226 Difference]: Without dead ends: 115 [2025-03-08 16:58:08,271 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 125 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 16:58:08,275 INFO L435 NwaCegarLoop]: 170 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-08 16:58:08,277 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 16:58:08,287 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2025-03-08 16:58:08,306 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 115. [2025-03-08 16:58:08,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 115 states, 99 states have (on average 1.4343434343434343) internal successors, (142), 99 states have internal predecessors, (142), 14 states have call successors, (14), 1 states have call predecessors, (14), 1 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2025-03-08 16:58:08,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 115 states to 115 states and 170 transitions. [2025-03-08 16:58:08,315 INFO L78 Accepts]: Start accepts. Automaton has 115 states and 170 transitions. Word has length 126 [2025-03-08 16:58:08,315 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 16:58:08,316 INFO L471 AbstractCegarLoop]: Abstraction has 115 states and 170 transitions. [2025-03-08 16:58:08,316 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 31.5) internal successors, (63), 2 states have internal predecessors, (63), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (14), 2 states have call predecessors, (14), 2 states have call successors, (14) [2025-03-08 16:58:08,316 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 170 transitions. [2025-03-08 16:58:08,318 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 127 [2025-03-08 16:58:08,319 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 16:58:08,320 INFO L218 NwaCegarLoop]: trace histogram [14, 14, 14, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 16:58:08,391 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2025-03-08 16:58:08,520 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-08 16:58:08,520 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 16:58:08,521 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 16:58:08,521 INFO L85 PathProgramCache]: Analyzing trace with hash -532425505, now seen corresponding path program 1 times [2025-03-08 16:58:08,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 16:58:08,522 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [160863733] [2025-03-08 16:58:08,522 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 16:58:08,522 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-08 16:58:08,522 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 16:58:08,525 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-08 16:58:08,526 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2025-03-08 16:58:08,633 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 126 statements into 1 equivalence classes. [2025-03-08 16:58:11,371 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 126 of 126 statements. [2025-03-08 16:58:11,371 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 16:58:11,371 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 16:58:11,465 INFO L256 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-03-08 16:58:11,469 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 16:58:14,278 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-08 16:58:14,279 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 173 treesize of output 65 [2025-03-08 16:58:14,919 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 160 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2025-03-08 16:58:14,919 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 16:58:14,919 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 16:58:14,919 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [160863733] [2025-03-08 16:58:14,919 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [160863733] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 16:58:14,919 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 16:58:14,919 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-08 16:58:14,919 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [965128314] [2025-03-08 16:58:14,919 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 16:58:14,920 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-08 16:58:14,920 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 16:58:14,921 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-08 16:58:14,921 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-03-08 16:58:14,921 INFO L87 Difference]: Start difference. First operand 115 states and 170 transitions. Second operand has 6 states, 6 states have (on average 10.333333333333334) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (14), 2 states have call predecessors, (14), 2 states have call successors, (14) [2025-03-08 16:58:25,565 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.62s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-08 16:58:29,577 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-08 16:58:33,583 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-08 16:58:37,588 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-08 16:58:42,506 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.92s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-08 16:58:46,521 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers []