./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_floatingpointinfluence_has-floats_file-17.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 798a7b37 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_floatingpointinfluence_has-floats_file-17.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 d57f7f362b600066c4a4932824c94646446bdcbd9ecdad935cd626673dca9b2a --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-03 22:21:19,606 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-03 22:21:19,652 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-03 22:21:19,659 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-03 22:21:19,659 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-03 22:21:19,680 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-03 22:21:19,682 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-03 22:21:19,683 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-03 22:21:19,683 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-03 22:21:19,683 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-03 22:21:19,684 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-03 22:21:19,684 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-03 22:21:19,684 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-03 22:21:19,684 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-03 22:21:19,685 INFO L153 SettingsManager]: * Use SBE=true [2025-03-03 22:21:19,685 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-03 22:21:19,685 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-03 22:21:19,685 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-03 22:21:19,685 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-03 22:21:19,685 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-03 22:21:19,685 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-03 22:21:19,686 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-03 22:21:19,686 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-03 22:21:19,687 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-03 22:21:19,687 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-03 22:21:19,688 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-03 22:21:19,688 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-03 22:21:19,688 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 -> d57f7f362b600066c4a4932824c94646446bdcbd9ecdad935cd626673dca9b2a [2025-03-03 22:21:19,901 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-03 22:21:19,910 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-03 22:21:19,911 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-03 22:21:19,912 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-03 22:21:19,912 INFO L274 PluginConnector]: CDTParser initialized [2025-03-03 22:21:19,914 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_floatingpointinfluence_has-floats_file-17.i [2025-03-03 22:21:20,987 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0bacc371c/7ee4a92ac6c04e499b4a485b710e4636/FLAG27647ac57 [2025-03-03 22:21:21,213 INFO L384 CDTParser]: Found 1 translation units. [2025-03-03 22:21:21,213 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_floatingpointinfluence_has-floats_file-17.i [2025-03-03 22:21:21,219 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0bacc371c/7ee4a92ac6c04e499b4a485b710e4636/FLAG27647ac57 [2025-03-03 22:21:21,562 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0bacc371c/7ee4a92ac6c04e499b4a485b710e4636 [2025-03-03 22:21:21,564 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-03 22:21:21,565 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-03 22:21:21,566 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-03 22:21:21,566 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-03 22:21:21,568 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-03 22:21:21,569 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,569 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@18632d8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21, skipping insertion in model container [2025-03-03 22:21:21,570 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,582 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-03 22:21:21,669 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_floatingpointinfluence_has-floats_file-17.i[917,930] [2025-03-03 22:21:21,694 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-03 22:21:21,700 INFO L200 MainTranslator]: Completed pre-run [2025-03-03 22:21:21,707 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_floatingpointinfluence_has-floats_file-17.i[917,930] [2025-03-03 22:21:21,719 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-03 22:21:21,729 INFO L204 MainTranslator]: Completed translation [2025-03-03 22:21:21,729 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21 WrapperNode [2025-03-03 22:21:21,731 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-03 22:21:21,732 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-03 22:21:21,732 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-03 22:21:21,732 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-03 22:21:21,736 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,741 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,766 INFO L138 Inliner]: procedures = 26, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 117 [2025-03-03 22:21:21,766 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-03 22:21:21,767 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-03 22:21:21,767 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-03 22:21:21,767 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-03 22:21:21,777 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,777 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,783 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,799 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-03 22:21:21,799 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,800 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,809 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,810 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,810 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,811 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,812 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-03 22:21:21,817 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-03 22:21:21,817 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-03 22:21:21,817 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-03 22:21:21,818 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (1/1) ... [2025-03-03 22:21:21,822 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-03 22:21:21,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-03 22:21:21,842 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-03 22:21:21,844 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-03 22:21:21,862 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-03 22:21:21,863 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-03 22:21:21,863 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-03 22:21:21,863 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-03 22:21:21,863 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-03 22:21:21,863 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-03 22:21:21,917 INFO L256 CfgBuilder]: Building ICFG [2025-03-03 22:21:21,919 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-03 22:21:22,073 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-03-03 22:21:22,074 INFO L307 CfgBuilder]: Performing block encoding [2025-03-03 22:21:22,080 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-03 22:21:22,080 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-03 22:21:22,080 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 03.03 10:21:22 BoogieIcfgContainer [2025-03-03 22:21:22,080 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-03 22:21:22,082 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-03 22:21:22,082 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-03 22:21:22,085 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-03 22:21:22,086 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 03.03 10:21:21" (1/3) ... [2025-03-03 22:21:22,086 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1f6a4e28 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 10:21:22, skipping insertion in model container [2025-03-03 22:21:22,086 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:21" (2/3) ... [2025-03-03 22:21:22,086 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1f6a4e28 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 10:21:22, skipping insertion in model container [2025-03-03 22:21:22,086 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 03.03 10:21:22" (3/3) ... [2025-03-03 22:21:22,087 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_floatingpointinfluence_has-floats_file-17.i [2025-03-03 22:21:22,097 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-03 22:21:22,098 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_floatingpointinfluence_has-floats_file-17.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-03 22:21:22,148 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-03 22:21:22,156 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;@cf780ae, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-03 22:21:22,157 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-03 22:21:22,161 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-03 22:21:22,168 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-03 22:21:22,169 INFO L210 NwaCegarLoop]: Found error trace [2025-03-03 22:21:22,170 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03 22:21:22,170 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-03 22:21:22,174 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-03 22:21:22,174 INFO L85 PathProgramCache]: Analyzing trace with hash 747818941, now seen corresponding path program 1 times [2025-03-03 22:21:22,179 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-03 22:21:22,180 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1591259272] [2025-03-03 22:21:22,181 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-03 22:21:22,181 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-03 22:21:22,242 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-03 22:21:22,258 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-03 22:21:22,261 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-03 22:21:22,261 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-03 22:21:22,347 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-03-03 22:21:22,348 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-03 22:21:22,348 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1591259272] [2025-03-03 22:21:22,348 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1591259272] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-03 22:21:22,348 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1113280448] [2025-03-03 22:21:22,348 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-03 22:21:22,350 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-03 22:21:22,350 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-03 22:21:22,367 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-03 22:21:22,368 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-03 22:21:22,438 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-03 22:21:22,492 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-03 22:21:22,493 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-03 22:21:22,494 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-03 22:21:22,500 INFO L256 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-03 22:21:22,506 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-03 22:21:22,528 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 30 proven. 0 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2025-03-03 22:21:22,529 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-03 22:21:22,529 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1113280448] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-03 22:21:22,529 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-03 22:21:22,529 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-03 22:21:22,531 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [25051241] [2025-03-03 22:21:22,531 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-03 22:21:22,534 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-03 22:21:22,534 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-03 22:21:22,546 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-03 22:21:22,547 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-03 22:21:22,548 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-03 22:21:22,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-03 22:21:22,569 INFO L93 Difference]: Finished difference Result 98 states and 163 transitions. [2025-03-03 22:21:22,569 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-03 22:21:22,570 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) Word has length 104 [2025-03-03 22:21:22,570 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-03 22:21:22,574 INFO L225 Difference]: With dead ends: 98 [2025-03-03 22:21:22,574 INFO L226 Difference]: Without dead ends: 49 [2025-03-03 22:21:22,577 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 105 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-03 22:21:22,580 INFO L435 NwaCegarLoop]: 71 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, 71 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-03 22:21:22,582 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-03 22:21:22,590 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-03-03 22:21:22,603 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-03-03 22:21:22,603 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2580645161290323) internal successors, (39), 31 states have internal predecessors, (39), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-03 22:21:22,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 71 transitions. [2025-03-03 22:21:22,607 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 71 transitions. Word has length 104 [2025-03-03 22:21:22,607 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-03 22:21:22,608 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 71 transitions. [2025-03-03 22:21:22,608 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (16), 1 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-03 22:21:22,608 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 71 transitions. [2025-03-03 22:21:22,611 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-03 22:21:22,611 INFO L210 NwaCegarLoop]: Found error trace [2025-03-03 22:21:22,611 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03 22:21:22,618 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-03-03 22:21:22,811 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-03 22:21:22,812 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-03 22:21:22,812 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-03 22:21:22,812 INFO L85 PathProgramCache]: Analyzing trace with hash 161450489, now seen corresponding path program 1 times [2025-03-03 22:21:22,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-03 22:21:22,812 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1118773512] [2025-03-03 22:21:22,812 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-03 22:21:22,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-03 22:21:22,834 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-03 22:21:22,902 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-03 22:21:22,902 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-03 22:21:22,902 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-03 22:21:22,902 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-03 22:21:22,912 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-03 22:21:22,956 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-03 22:21:22,956 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-03 22:21:22,956 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-03 22:21:22,983 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-03 22:21:22,983 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-03 22:21:22,984 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-03 22:21:22,985 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-03 22:21:22,987 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-03 22:21:23,040 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-03 22:21:23,042 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 03.03 10:21:23 BoogieIcfgContainer [2025-03-03 22:21:23,042 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-03 22:21:23,043 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-03 22:21:23,043 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-03 22:21:23,043 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-03 22:21:23,044 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 03.03 10:21:22" (3/4) ... [2025-03-03 22:21:23,045 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-03 22:21:23,046 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-03 22:21:23,046 INFO L158 Benchmark]: Toolchain (without parser) took 1481.23ms. Allocated memory is still 201.3MB. Free memory was 153.9MB in the beginning and 60.6MB in the end (delta: 93.3MB). Peak memory consumption was 83.9MB. Max. memory is 16.1GB. [2025-03-03 22:21:23,046 INFO L158 Benchmark]: CDTParser took 0.29ms. Allocated memory is still 201.3MB. Free memory is still 118.4MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-03 22:21:23,046 INFO L158 Benchmark]: CACSL2BoogieTranslator took 165.50ms. Allocated memory is still 201.3MB. Free memory was 153.5MB in the beginning and 140.5MB in the end (delta: 13.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-03 22:21:23,047 INFO L158 Benchmark]: Boogie Procedure Inliner took 34.86ms. Allocated memory is still 201.3MB. Free memory was 140.5MB in the beginning and 138.7MB in the end (delta: 1.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-03 22:21:23,047 INFO L158 Benchmark]: Boogie Preprocessor took 45.30ms. Allocated memory is still 201.3MB. Free memory was 138.3MB in the beginning and 136.1MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-03 22:21:23,047 INFO L158 Benchmark]: IcfgBuilder took 263.47ms. Allocated memory is still 201.3MB. Free memory was 136.1MB in the beginning and 119.3MB in the end (delta: 16.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-03 22:21:23,047 INFO L158 Benchmark]: TraceAbstraction took 960.32ms. Allocated memory is still 201.3MB. Free memory was 118.9MB in the beginning and 60.6MB in the end (delta: 58.3MB). Peak memory consumption was 58.7MB. Max. memory is 16.1GB. [2025-03-03 22:21:23,047 INFO L158 Benchmark]: Witness Printer took 2.77ms. Allocated memory is still 201.3MB. Free memory is still 60.6MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-03 22:21:23,048 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.29ms. Allocated memory is still 201.3MB. Free memory is still 118.4MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 165.50ms. Allocated memory is still 201.3MB. Free memory was 153.5MB in the beginning and 140.5MB in the end (delta: 13.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 34.86ms. Allocated memory is still 201.3MB. Free memory was 140.5MB in the beginning and 138.7MB in the end (delta: 1.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 45.30ms. Allocated memory is still 201.3MB. Free memory was 138.3MB in the beginning and 136.1MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 263.47ms. Allocated memory is still 201.3MB. Free memory was 136.1MB in the beginning and 119.3MB in the end (delta: 16.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * TraceAbstraction took 960.32ms. Allocated memory is still 201.3MB. Free memory was 118.9MB in the beginning and 60.6MB in the end (delta: 58.3MB). Peak memory consumption was 58.7MB. Max. memory is 16.1GB. * Witness Printer took 2.77ms. Allocated memory is still 201.3MB. Free memory is still 60.6MB. 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 53, overapproximation of someBinaryFLOATComparisonOperation at line 103, overapproximation of someBinaryDOUBLEComparisonOperation at line 77, overapproximation of someBinaryDOUBLEComparisonOperation at line 55, overapproximation of someBinaryDOUBLEComparisonOperation at line 66, overapproximation of someBinaryDOUBLEComparisonOperation at line 94, overapproximation of someBinaryDOUBLEComparisonOperation at line 75, overapproximation of someBinaryDOUBLEComparisonOperation at line 81, overapproximation of someBinaryDOUBLEComparisonOperation at line 83, overapproximation of someBinaryDOUBLEComparisonOperation at line 79, overapproximation of someBinaryDOUBLEComparisonOperation at line 103. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] double var_1_1 = 10000000.8; [L23] unsigned char var_1_2 = 0; [L24] double var_1_3 = 16.2; [L25] double var_1_4 = 7.5; [L26] double var_1_5 = 49.6; [L27] signed short int var_1_6 = -10; [L28] double var_1_7 = 4.5; [L29] double var_1_8 = 9.4; [L30] signed short int var_1_9 = 128; [L31] signed short int var_1_10 = 128; [L32] unsigned char var_1_11 = 0; [L33] unsigned long int var_1_12 = 100; [L34] float var_1_13 = 128.4; [L35] double var_1_14 = 3.5; [L36] unsigned char var_1_15 = 16; [L37] unsigned char var_1_16 = 2; [L38] unsigned char last_1_var_1_15 = 16; VAL [isInitial=0, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=0, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L107] isInitial = 1 [L108] FCALL initially() [L109] COND TRUE 1 [L110] CALL updateLastVariables() [L100] last_1_var_1_15 = var_1_15 VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=0, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L110] RET updateLastVariables() [L111] CALL updateVariables() [L71] var_1_2 = __VERIFIER_nondet_uchar() [L72] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L72] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L73] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L73] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_3=81/5, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L74] var_1_3 = __VERIFIER_nondet_double() [L75] CALL assume_abort_if_not((var_1_3 >= -461168.6018427382800e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 4611686.018427382800e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L75] RET assume_abort_if_not((var_1_3 >= -461168.6018427382800e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 4611686.018427382800e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_4=15/2, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L76] var_1_4 = __VERIFIER_nondet_double() [L77] CALL assume_abort_if_not((var_1_4 >= -461168.6018427382800e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 4611686.018427382800e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L77] RET assume_abort_if_not((var_1_4 >= -461168.6018427382800e+13F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 4611686.018427382800e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_5=248/5, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L78] var_1_5 = __VERIFIER_nondet_double() [L79] CALL assume_abort_if_not((var_1_5 >= -230584.3009213691390e+13F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 2305843.009213691390e+12F && var_1_5 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L79] RET assume_abort_if_not((var_1_5 >= -230584.3009213691390e+13F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 2305843.009213691390e+12F && var_1_5 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_7=9/2, var_1_8=47/5, var_1_9=128] [L80] var_1_7 = __VERIFIER_nondet_double() [L81] CALL assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_8=47/5, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_8=47/5, var_1_9=128] [L81] RET assume_abort_if_not((var_1_7 >= 0.0F && var_1_7 <= -1.0e-20F) || (var_1_7 <= 9223372.036854776000e+12F && var_1_7 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_8=47/5, var_1_9=128] [L82] var_1_8 = __VERIFIER_nondet_double() [L83] CALL assume_abort_if_not((var_1_8 >= 0.0F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854776000e+12F && var_1_8 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=128] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=128] [L83] RET assume_abort_if_not((var_1_8 >= 0.0F && var_1_8 <= -1.0e-20F) || (var_1_8 <= 9223372.036854776000e+12F && var_1_8 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=128] [L84] var_1_9 = __VERIFIER_nondet_short() [L85] CALL assume_abort_if_not(var_1_9 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L85] RET assume_abort_if_not(var_1_9 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L86] CALL assume_abort_if_not(var_1_9 <= 16383) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L86] RET assume_abort_if_not(var_1_9 <= 16383) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=128, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L87] var_1_10 = __VERIFIER_nondet_short() [L88] CALL assume_abort_if_not(var_1_10 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L88] RET assume_abort_if_not(var_1_10 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L89] CALL assume_abort_if_not(var_1_10 <= 32766) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L89] RET assume_abort_if_not(var_1_10 <= 32766) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L90] var_1_11 = __VERIFIER_nondet_uchar() [L91] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L91] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L92] CALL assume_abort_if_not(var_1_11 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L92] RET assume_abort_if_not(var_1_11 <= 1) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_14=7/2, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L93] var_1_14 = __VERIFIER_nondet_double() [L94] CALL assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854776000e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L94] RET assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854776000e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=2, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L95] var_1_16 = __VERIFIER_nondet_uchar() [L96] CALL assume_abort_if_not(var_1_16 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L96] RET assume_abort_if_not(var_1_16 >= 0) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L97] CALL assume_abort_if_not(var_1_16 <= 254) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L97] RET assume_abort_if_not(var_1_16 <= 254) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=100, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L111] RET updateVariables() [L112] CALL step() [L42] var_1_12 = last_1_var_1_15 [L43] unsigned long int stepLocal_1 = var_1_12; [L44] signed short int stepLocal_0 = var_1_9; VAL [isInitial=1, last_1_var_1_15=16, stepLocal_0=16383, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L45] COND FALSE !(stepLocal_0 >= var_1_10) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_1=50000004/5, var_1_2=1, var_1_6=-10, var_1_9=16383] [L52] COND TRUE \read(var_1_2) [L53] var_1_1 = (var_1_3 + ((((var_1_4) < ((49.5 + var_1_5))) ? (var_1_4) : ((49.5 + var_1_5))))) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_6=-10, var_1_9=16383] [L55] COND TRUE (- (var_1_7 - var_1_8)) <= var_1_3 [L56] var_1_6 = ((8 + var_1_15) - var_1_15) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=642/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_6=8, var_1_9=16383] [L66] COND TRUE var_1_7 < (var_1_8 - var_1_14) [L67] var_1_13 = ((((var_1_4) > (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3))))) ? (var_1_4) : (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3)))))) VAL [isInitial=1, last_1_var_1_15=16, stepLocal_1=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] [L112] RET step() [L113] CALL, EXPR property() [L103-L104] return ((((var_1_2 ? (var_1_1 == ((double) (var_1_3 + ((((var_1_4) < ((49.5 + var_1_5))) ? (var_1_4) : ((49.5 + var_1_5))))))) : 1) && (((- (var_1_7 - var_1_8)) <= var_1_3) ? (var_1_6 == ((signed short int) ((8 + var_1_15) - var_1_15))) : (var_1_2 ? (var_1_11 ? (var_1_6 == ((signed short int) var_1_15)) : 1) : (var_1_6 == ((signed short int) var_1_15))))) && (var_1_12 == ((unsigned long int) last_1_var_1_15))) && ((var_1_7 < (var_1_8 - var_1_14)) ? (var_1_13 == ((float) ((((var_1_4) > (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3))))) ? (var_1_4) : (((((((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) > (var_1_3)) ? (((((127.4f) > (var_1_5)) ? (127.4f) : (var_1_5)))) : (var_1_3)))))))) : 1)) && ((var_1_9 >= var_1_10) ? (((var_1_9 + last_1_var_1_15) >= var_1_12) ? (var_1_15 == ((unsigned char) var_1_16)) : (var_1_15 == ((unsigned char) var_1_16))) : 1) ; VAL [\result=0, isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] [L113] RET, EXPR property() [L113] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] [L19] reach_error() VAL [isInitial=1, last_1_var_1_15=16, var_1_10=16384, var_1_11=0, var_1_12=16, var_1_13=637/5, var_1_15=16, var_1_16=254, var_1_2=1, var_1_3=637/5, var_1_4=637/5, var_1_5=637/5, var_1_6=8, var_1_9=16383] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 52 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.9s, OverallIterations: 2, TraceHistogramMax: 16, 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, 71 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, 71 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 105 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=52occurred 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.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 312 NumberOfCodeBlocks, 312 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 206 ConstructedInterpolants, 0 QuantifiedInterpolants, 206 SizeOfPredicates, 0 NumberOfNonLiveVariables, 246 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 930/960 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-03 22:21:23,063 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, 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_floatingpointinfluence_has-floats_file-17.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 d57f7f362b600066c4a4932824c94646446bdcbd9ecdad935cd626673dca9b2a --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-03 22:21:24,762 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-03 22:21:24,847 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-03 22:21:24,854 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-03 22:21:24,856 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-03 22:21:24,871 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-03 22:21:24,871 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-03 22:21:24,872 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-03 22:21:24,873 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-03 22:21:24,873 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-03 22:21:24,873 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-03 22:21:24,873 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-03 22:21:24,873 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-03 22:21:24,873 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-03 22:21:24,873 INFO L153 SettingsManager]: * Use SBE=true [2025-03-03 22:21:24,874 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-03 22:21:24,874 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-03 22:21:24,874 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-03 22:21:24,875 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-03 22:21:24,875 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-03 22:21:24,875 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 -> d57f7f362b600066c4a4932824c94646446bdcbd9ecdad935cd626673dca9b2a [2025-03-03 22:21:25,137 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-03 22:21:25,147 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-03 22:21:25,150 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-03 22:21:25,151 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-03 22:21:25,151 INFO L274 PluginConnector]: CDTParser initialized [2025-03-03 22:21:25,152 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_floatingpointinfluence_has-floats_file-17.i [2025-03-03 22:21:26,330 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d3f040fb0/af14aa0dae5a4706bd4ecef162eca36d/FLAG89a2eeed2 [2025-03-03 22:21:26,536 INFO L384 CDTParser]: Found 1 translation units. [2025-03-03 22:21:26,537 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_floatingpointinfluence_has-floats_file-17.i [2025-03-03 22:21:26,544 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d3f040fb0/af14aa0dae5a4706bd4ecef162eca36d/FLAG89a2eeed2 [2025-03-03 22:21:26,898 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d3f040fb0/af14aa0dae5a4706bd4ecef162eca36d [2025-03-03 22:21:26,900 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-03 22:21:26,901 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-03 22:21:26,902 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-03 22:21:26,902 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-03 22:21:26,905 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-03 22:21:26,905 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 10:21:26" (1/1) ... [2025-03-03 22:21:26,906 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4ab6e30c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:26, skipping insertion in model container [2025-03-03 22:21:26,906 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 10:21:26" (1/1) ... [2025-03-03 22:21:26,916 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-03 22:21:27,002 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_floatingpointinfluence_has-floats_file-17.i[917,930] [2025-03-03 22:21:27,039 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-03 22:21:27,051 INFO L200 MainTranslator]: Completed pre-run [2025-03-03 22:21:27,058 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_floatingpointinfluence_has-floats_file-17.i[917,930] [2025-03-03 22:21:27,072 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-03 22:21:27,083 INFO L204 MainTranslator]: Completed translation [2025-03-03 22:21:27,084 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27 WrapperNode [2025-03-03 22:21:27,084 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-03 22:21:27,085 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-03 22:21:27,085 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-03 22:21:27,085 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-03 22:21:27,089 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,097 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,113 INFO L138 Inliner]: procedures = 27, calls = 29, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 115 [2025-03-03 22:21:27,113 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-03 22:21:27,114 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-03 22:21:27,114 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-03 22:21:27,114 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-03 22:21:27,120 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,120 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,122 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,131 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-03 22:21:27,131 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,132 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,137 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,138 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,139 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,139 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,141 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-03 22:21:27,142 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-03 22:21:27,142 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-03 22:21:27,142 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-03 22:21:27,142 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (1/1) ... [2025-03-03 22:21:27,146 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-03 22:21:27,155 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-03 22:21:27,165 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-03 22:21:27,167 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-03 22:21:27,182 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-03 22:21:27,182 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-03 22:21:27,182 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-03 22:21:27,182 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-03 22:21:27,182 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-03 22:21:27,182 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-03 22:21:27,244 INFO L256 CfgBuilder]: Building ICFG [2025-03-03 22:21:27,245 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-03 22:21:33,166 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-03-03 22:21:33,166 INFO L307 CfgBuilder]: Performing block encoding [2025-03-03 22:21:33,172 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-03 22:21:33,173 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-03 22:21:33,173 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 03.03 10:21:33 BoogieIcfgContainer [2025-03-03 22:21:33,173 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-03 22:21:33,175 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-03 22:21:33,175 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-03 22:21:33,178 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-03 22:21:33,178 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 03.03 10:21:26" (1/3) ... [2025-03-03 22:21:33,178 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@335124e1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 10:21:33, skipping insertion in model container [2025-03-03 22:21:33,178 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 10:21:27" (2/3) ... [2025-03-03 22:21:33,178 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@335124e1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 10:21:33, skipping insertion in model container [2025-03-03 22:21:33,179 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 03.03 10:21:33" (3/3) ... [2025-03-03 22:21:33,179 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_floatingpointinfluence_has-floats_file-17.i [2025-03-03 22:21:33,188 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-03 22:21:33,189 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_floatingpointinfluence_has-floats_file-17.i that has 2 procedures, 52 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-03 22:21:33,231 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-03 22:21:33,241 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;@69e86c17, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-03 22:21:33,241 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-03 22:21:33,244 INFO L276 IsEmpty]: Start isEmpty. Operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-03 22:21:33,251 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-03 22:21:33,252 INFO L210 NwaCegarLoop]: Found error trace [2025-03-03 22:21:33,253 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03 22:21:33,253 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-03 22:21:33,257 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-03 22:21:33,258 INFO L85 PathProgramCache]: Analyzing trace with hash 747818941, now seen corresponding path program 1 times [2025-03-03 22:21:33,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-03 22:21:33,266 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [636079714] [2025-03-03 22:21:33,266 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-03 22:21:33,266 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-03 22:21:33,268 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-03 22:21:33,270 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-03 22:21:33,272 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-03 22:21:33,344 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-03 22:21:33,648 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-03 22:21:33,648 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-03 22:21:33,648 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-03 22:21:33,663 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-03 22:21:33,668 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-03 22:21:33,700 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 86 proven. 0 refuted. 0 times theorem prover too weak. 394 trivial. 0 not checked. [2025-03-03 22:21:33,700 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-03 22:21:33,701 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-03 22:21:33,701 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [636079714] [2025-03-03 22:21:33,701 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [636079714] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-03 22:21:33,701 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-03 22:21:33,701 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-03 22:21:33,704 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [881056799] [2025-03-03 22:21:33,704 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-03 22:21:33,706 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-03 22:21:33,707 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-03 22:21:33,718 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-03 22:21:33,718 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-03 22:21:33,719 INFO L87 Difference]: Start difference. First operand has 52 states, 33 states have (on average 1.3333333333333333) internal successors, (44), 34 states have internal predecessors, (44), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand has 2 states, 2 states have (on average 15.5) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-03 22:21:33,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-03 22:21:33,746 INFO L93 Difference]: Finished difference Result 98 states and 163 transitions. [2025-03-03 22:21:33,747 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-03 22:21:33,748 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 15.5) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) Word has length 104 [2025-03-03 22:21:33,749 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-03 22:21:33,754 INFO L225 Difference]: With dead ends: 98 [2025-03-03 22:21:33,754 INFO L226 Difference]: Without dead ends: 49 [2025-03-03 22:21:33,757 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 103 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-03 22:21:33,760 INFO L435 NwaCegarLoop]: 71 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, 71 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-03 22:21:33,760 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-03 22:21:33,770 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2025-03-03 22:21:33,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-03-03 22:21:33,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 31 states have (on average 1.2580645161290323) internal successors, (39), 31 states have internal predecessors, (39), 16 states have call successors, (16), 1 states have call predecessors, (16), 1 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2025-03-03 22:21:33,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 71 transitions. [2025-03-03 22:21:33,795 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 71 transitions. Word has length 104 [2025-03-03 22:21:33,796 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-03 22:21:33,796 INFO L471 AbstractCegarLoop]: Abstraction has 49 states and 71 transitions. [2025-03-03 22:21:33,796 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 15.5) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (16), 2 states have call predecessors, (16), 2 states have call successors, (16) [2025-03-03 22:21:33,796 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 71 transitions. [2025-03-03 22:21:33,800 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2025-03-03 22:21:33,800 INFO L210 NwaCegarLoop]: Found error trace [2025-03-03 22:21:33,800 INFO L218 NwaCegarLoop]: trace histogram [16, 16, 16, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03 22:21:33,814 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-03 22:21:34,001 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-03 22:21:34,002 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-03 22:21:34,003 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-03 22:21:34,003 INFO L85 PathProgramCache]: Analyzing trace with hash 161450489, now seen corresponding path program 1 times [2025-03-03 22:21:34,003 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-03 22:21:34,003 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2116311642] [2025-03-03 22:21:34,003 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-03 22:21:34,003 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-03 22:21:34,003 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-03 22:21:34,007 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-03 22:21:34,007 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-03 22:21:34,043 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-03-03 22:21:34,393 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-03-03 22:21:34,393 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-03 22:21:34,393 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-03 22:21:34,411 INFO L256 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 31 conjuncts are in the unsatisfiable core [2025-03-03 22:21:34,423 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-03 22:22:37,264 WARN L286 SmtUtils]: Spent 5.15s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify)