./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/float-benchs/filter2.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version e2fb8bed Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-benchs/filter2.c -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 e42e84729022b725ebcfce66d0ece68757a1a9b385230356b4d45a24fc6b4ef2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 02:45:29,679 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 02:45:29,736 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-08 02:45:29,740 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 02:45:29,740 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 02:45:29,762 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 02:45:29,763 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 02:45:29,763 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 02:45:29,763 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 02:45:29,763 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 02:45:29,764 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 02:45:29,764 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 02:45:29,765 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 02:45:29,765 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 02:45:29,765 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 02:45:29,765 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 02:45:29,765 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 02:45:29,765 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 02:45:29,765 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 02:45:29,766 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 02:45:29,766 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 02:45:29,767 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 02:45:29,767 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 02:45:29,767 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 02:45:29,767 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 02:45:29,767 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 02:45:29,767 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-08 02:45:29,767 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-08 02:45:29,768 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 02:45:29,768 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 02:45:29,768 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 02:45:29,768 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 02:45:29,768 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 -> e42e84729022b725ebcfce66d0ece68757a1a9b385230356b4d45a24fc6b4ef2 [2025-03-08 02:45:29,980 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 02:45:29,986 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 02:45:29,987 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 02:45:29,988 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 02:45:29,988 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 02:45:29,989 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-benchs/filter2.c [2025-03-08 02:45:31,089 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a64e8a554/499343c43724464585081e93b28e6c5e/FLAGe6dfa604c [2025-03-08 02:45:31,309 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 02:45:31,310 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2.c [2025-03-08 02:45:31,317 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a64e8a554/499343c43724464585081e93b28e6c5e/FLAGe6dfa604c [2025-03-08 02:45:31,330 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a64e8a554/499343c43724464585081e93b28e6c5e [2025-03-08 02:45:31,332 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 02:45:31,335 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 02:45:31,336 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 02:45:31,336 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 02:45:31,339 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 02:45:31,339 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,340 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1929be37 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31, skipping insertion in model container [2025-03-08 02:45:31,340 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,351 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 02:45:31,447 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/float-benchs/filter2.c[652,665] [2025-03-08 02:45:31,462 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 02:45:31,469 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 02:45:31,476 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/float-benchs/filter2.c[652,665] [2025-03-08 02:45:31,481 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 02:45:31,494 INFO L204 MainTranslator]: Completed translation [2025-03-08 02:45:31,495 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31 WrapperNode [2025-03-08 02:45:31,495 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 02:45:31,496 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 02:45:31,497 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 02:45:31,497 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 02:45:31,502 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,507 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,518 INFO L138 Inliner]: procedures = 14, calls = 11, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 49 [2025-03-08 02:45:31,520 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 02:45:31,520 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 02:45:31,520 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 02:45:31,520 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 02:45:31,527 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,528 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,531 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,540 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-08 02:45:31,540 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,541 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,543 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,547 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,547 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,550 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,551 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 02:45:31,552 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 02:45:31,552 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 02:45:31,552 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 02:45:31,553 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (1/1) ... [2025-03-08 02:45:31,558 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 02:45:31,567 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 02:45:31,579 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-08 02:45:31,582 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-08 02:45:31,599 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 02:45:31,599 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 02:45:31,599 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 02:45:31,599 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-08 02:45:31,599 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 02:45:31,600 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 02:45:31,647 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 02:45:31,649 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 02:45:31,742 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-03-08 02:45:31,744 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 02:45:31,751 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 02:45:31,752 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 02:45:31,752 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:45:31 BoogieIcfgContainer [2025-03-08 02:45:31,752 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 02:45:31,754 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 02:45:31,754 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 02:45:31,757 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 02:45:31,758 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:45:31" (1/3) ... [2025-03-08 02:45:31,758 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@108fa7f3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:45:31, skipping insertion in model container [2025-03-08 02:45:31,758 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:31" (2/3) ... [2025-03-08 02:45:31,758 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@108fa7f3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:45:31, skipping insertion in model container [2025-03-08 02:45:31,758 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:45:31" (3/3) ... [2025-03-08 02:45:31,759 INFO L128 eAbstractionObserver]: Analyzing ICFG filter2.c [2025-03-08 02:45:31,769 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 02:45:31,771 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG filter2.c that has 2 procedures, 19 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 02:45:31,803 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 02:45:31,814 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;@7e501203, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 02:45:31,814 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 02:45:31,817 INFO L276 IsEmpty]: Start isEmpty. Operand has 19 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-03-08 02:45:31,824 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2025-03-08 02:45:31,824 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 02:45:31,825 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 02:45:31,825 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 02:45:31,829 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 02:45:31,829 INFO L85 PathProgramCache]: Analyzing trace with hash 1182601517, now seen corresponding path program 1 times [2025-03-08 02:45:31,834 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 02:45:31,834 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1086434281] [2025-03-08 02:45:31,834 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 02:45:31,835 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 02:45:31,885 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-03-08 02:45:31,899 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-03-08 02:45:31,900 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 02:45:31,901 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 02:45:31,939 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2025-03-08 02:45:31,940 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-08 02:45:31,940 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1086434281] [2025-03-08 02:45:31,941 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1086434281] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-08 02:45:31,941 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1376352583] [2025-03-08 02:45:31,941 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 02:45:31,941 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-08 02:45:31,942 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 02:45:31,943 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-08 02:45:31,945 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-08 02:45:31,989 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-03-08 02:45:32,008 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-03-08 02:45:32,008 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 02:45:32,008 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 02:45:32,010 INFO L256 TraceCheckSpWp]: Trace formula consists of 67 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 02:45:32,012 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 02:45:32,021 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2025-03-08 02:45:32,023 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 02:45:32,024 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1376352583] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 02:45:32,024 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-08 02:45:32,024 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-08 02:45:32,026 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [232331262] [2025-03-08 02:45:32,026 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 02:45:32,029 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 02:45:32,030 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-08 02:45:32,044 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 02:45:32,045 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 02:45:32,046 INFO L87 Difference]: Start difference. First operand has 19 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-03-08 02:45:32,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 02:45:32,059 INFO L93 Difference]: Finished difference Result 35 states and 45 transitions. [2025-03-08 02:45:32,059 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 02:45:32,060 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2025-03-08 02:45:32,061 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 02:45:32,064 INFO L225 Difference]: With dead ends: 35 [2025-03-08 02:45:32,064 INFO L226 Difference]: Without dead ends: 16 [2025-03-08 02:45:32,066 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 02:45:32,069 INFO L435 NwaCegarLoop]: 21 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, 21 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-08 02:45:32,071 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 02:45:32,079 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states. [2025-03-08 02:45:32,087 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2025-03-08 02:45:32,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 11 states have (on average 1.0909090909090908) internal successors, (12), 11 states have internal predecessors, (12), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-03-08 02:45:32,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 18 transitions. [2025-03-08 02:45:32,093 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 18 transitions. Word has length 22 [2025-03-08 02:45:32,093 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 02:45:32,093 INFO L471 AbstractCegarLoop]: Abstraction has 16 states and 18 transitions. [2025-03-08 02:45:32,093 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-03-08 02:45:32,093 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 18 transitions. [2025-03-08 02:45:32,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2025-03-08 02:45:32,094 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 02:45:32,094 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 02:45:32,100 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-08 02:45:32,296 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-03-08 02:45:32,297 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 02:45:32,297 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 02:45:32,297 INFO L85 PathProgramCache]: Analyzing trace with hash -79244692, now seen corresponding path program 1 times [2025-03-08 02:45:32,297 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-08 02:45:32,297 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [509880650] [2025-03-08 02:45:32,297 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 02:45:32,298 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-08 02:45:32,308 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-03-08 02:45:32,320 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-03-08 02:45:32,321 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 02:45:32,321 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 02:45:32,321 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-08 02:45:32,323 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-03-08 02:45:32,333 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-03-08 02:45:32,333 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 02:45:32,333 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-08 02:45:32,344 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-08 02:45:32,344 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-08 02:45:32,345 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-08 02:45:32,346 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-08 02:45:32,348 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-08 02:45:32,360 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-08 02:45:32,362 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.03 02:45:32 BoogieIcfgContainer [2025-03-08 02:45:32,363 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-08 02:45:32,363 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-08 02:45:32,363 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-08 02:45:32,363 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-08 02:45:32,364 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:45:31" (3/4) ... [2025-03-08 02:45:32,365 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-08 02:45:32,366 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-08 02:45:32,366 INFO L158 Benchmark]: Toolchain (without parser) took 1032.82ms. Allocated memory is still 167.8MB. Free memory was 131.2MB in the beginning and 79.4MB in the end (delta: 51.8MB). Peak memory consumption was 50.3MB. Max. memory is 16.1GB. [2025-03-08 02:45:32,367 INFO L158 Benchmark]: CDTParser took 0.13ms. Allocated memory is still 201.3MB. Free memory is still 125.6MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 02:45:32,368 INFO L158 Benchmark]: CACSL2BoogieTranslator took 160.25ms. Allocated memory is still 167.8MB. Free memory was 131.2MB in the beginning and 120.0MB in the end (delta: 11.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-08 02:45:32,368 INFO L158 Benchmark]: Boogie Procedure Inliner took 23.43ms. Allocated memory is still 167.8MB. Free memory was 120.0MB in the beginning and 118.7MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 02:45:32,370 INFO L158 Benchmark]: Boogie Preprocessor took 31.06ms. Allocated memory is still 167.8MB. Free memory was 118.7MB in the beginning and 117.8MB in the end (delta: 916.3kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 02:45:32,370 INFO L158 Benchmark]: IcfgBuilder took 200.46ms. Allocated memory is still 167.8MB. Free memory was 117.8MB in the beginning and 106.3MB in the end (delta: 11.4MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-08 02:45:32,370 INFO L158 Benchmark]: TraceAbstraction took 608.47ms. Allocated memory is still 167.8MB. Free memory was 105.9MB in the beginning and 79.9MB in the end (delta: 26.0MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-08 02:45:32,371 INFO L158 Benchmark]: Witness Printer took 2.59ms. Allocated memory is still 167.8MB. Free memory was 79.9MB in the beginning and 79.4MB in the end (delta: 452.7kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-08 02:45:32,374 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.13ms. Allocated memory is still 201.3MB. Free memory is still 125.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 160.25ms. Allocated memory is still 167.8MB. Free memory was 131.2MB in the beginning and 120.0MB in the end (delta: 11.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 23.43ms. Allocated memory is still 167.8MB. Free memory was 120.0MB in the beginning and 118.7MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 31.06ms. Allocated memory is still 167.8MB. Free memory was 118.7MB in the beginning and 117.8MB in the end (delta: 916.3kB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 200.46ms. Allocated memory is still 167.8MB. Free memory was 117.8MB in the beginning and 106.3MB in the end (delta: 11.4MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 608.47ms. Allocated memory is still 167.8MB. Free memory was 105.9MB in the beginning and 79.9MB in the end (delta: 26.0MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Witness Printer took 2.59ms. Allocated memory is still 167.8MB. Free memory was 79.9MB in the beginning and 79.4MB in the end (delta: 452.7kB). 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: 17]: 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 42, overapproximation of someBinaryDOUBLEComparisonOperation at line 28, overapproximation of someBinaryDOUBLEComparisonOperation at line 44, overapproximation of someBinaryDOUBLEComparisonOperation at line 27, overapproximation of someBinaryDOUBLEComparisonOperation at line 38, overapproximation of to_real at line 30. Possible FailurePath: [L22] double E, E0, E1, S0, S1, S; [L23] int i; [L25] E = __VERIFIER_nondet_double() [L26] E0 = __VERIFIER_nondet_double() [L27] CALL assume_abort_if_not(E >= 0. && E <= 1.) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L27] RET assume_abort_if_not(E >= 0. && E <= 1.) [L28] CALL assume_abort_if_not(E0 >= 0. && E0 <= 1.) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L28] RET assume_abort_if_not(E0 >= 0. && E0 <= 1.) [L30] S0 = 0 [L31] S = 0 [L33] i = 0 VAL [i=0] [L33] COND TRUE i <= 1000000 [L34] E1 = E0 [L35] E0 = E [L37] E = __VERIFIER_nondet_double() [L38] CALL assume_abort_if_not(E >= 0. && E <= 1.) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L38] RET assume_abort_if_not(E >= 0. && E <= 1.) VAL [E0=53, i=0] [L40] S1 = S0 [L41] S0 = S [L42] S = 0.7*E - E0*1.3 + E1*1.1 + S0*1.4 - S1*0.7 [L44] CALL __VERIFIER_assert(S >= -4. && S <= 4.) [L17] COND TRUE !(cond) [L17] reach_error() - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 19 locations, 26 edges, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.6s, OverallIterations: 2, TraceHistogramMax: 3, 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, 21 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, 21 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 23 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=19occurred 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.1s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 66 NumberOfCodeBlocks, 66 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 42 ConstructedInterpolants, 0 QuantifiedInterpolants, 42 SizeOfPredicates, 0 NumberOfNonLiveVariables, 67 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 20/24 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2025-03-08 02:45:32,385 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-benchs/filter2.c -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 e42e84729022b725ebcfce66d0ece68757a1a9b385230356b4d45a24fc6b4ef2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-e2fb8be-m [2025-03-08 02:45:34,172 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-08 02:45:34,251 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-08 02:45:34,259 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-08 02:45:34,259 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-08 02:45:34,283 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-08 02:45:34,283 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-08 02:45:34,284 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-08 02:45:34,284 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-08 02:45:34,284 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-08 02:45:34,285 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-08 02:45:34,285 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-08 02:45:34,285 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-08 02:45:34,285 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-08 02:45:34,285 INFO L153 SettingsManager]: * Use SBE=true [2025-03-08 02:45:34,286 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-08 02:45:34,286 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-08 02:45:34,287 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-08 02:45:34,288 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-08 02:45:34,288 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-08 02:45:34,288 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-08 02:45:34,288 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-08 02:45:34,288 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-08 02:45:34,288 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-08 02:45:34,288 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 02:45:34,289 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-08 02:45:34,289 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-08 02:45:34,290 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-08 02:45:34,290 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-08 02:45:34,290 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 -> e42e84729022b725ebcfce66d0ece68757a1a9b385230356b4d45a24fc6b4ef2 [2025-03-08 02:45:34,523 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-08 02:45:34,528 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-08 02:45:34,530 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-08 02:45:34,531 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-08 02:45:34,531 INFO L274 PluginConnector]: CDTParser initialized [2025-03-08 02:45:34,532 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-benchs/filter2.c [2025-03-08 02:45:35,693 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/955f913ff/8507f927dd374863aabc39f6c8d38c68/FLAGc123b9e4f [2025-03-08 02:45:35,871 INFO L384 CDTParser]: Found 1 translation units. [2025-03-08 02:45:35,872 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2.c [2025-03-08 02:45:35,880 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/955f913ff/8507f927dd374863aabc39f6c8d38c68/FLAGc123b9e4f [2025-03-08 02:45:36,281 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/955f913ff/8507f927dd374863aabc39f6c8d38c68 [2025-03-08 02:45:36,282 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-08 02:45:36,284 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-08 02:45:36,285 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-08 02:45:36,285 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-08 02:45:36,288 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-08 02:45:36,289 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,290 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4906bb13 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36, skipping insertion in model container [2025-03-08 02:45:36,290 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,302 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-08 02:45:36,416 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/float-benchs/filter2.c[652,665] [2025-03-08 02:45:36,432 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 02:45:36,444 INFO L200 MainTranslator]: Completed pre-run [2025-03-08 02:45:36,453 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/float-benchs/filter2.c[652,665] [2025-03-08 02:45:36,458 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-08 02:45:36,473 INFO L204 MainTranslator]: Completed translation [2025-03-08 02:45:36,474 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36 WrapperNode [2025-03-08 02:45:36,474 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-08 02:45:36,475 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-08 02:45:36,475 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-08 02:45:36,476 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-08 02:45:36,481 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,488 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,500 INFO L138 Inliner]: procedures = 15, calls = 11, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 50 [2025-03-08 02:45:36,501 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-08 02:45:36,501 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-08 02:45:36,501 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-08 02:45:36,501 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-08 02:45:36,506 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,506 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,509 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,521 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-08 02:45:36,521 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,521 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,528 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,528 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,529 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,533 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,534 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-08 02:45:36,536 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-08 02:45:36,536 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-08 02:45:36,536 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-08 02:45:36,537 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (1/1) ... [2025-03-08 02:45:36,541 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-08 02:45:36,550 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-08 02:45:36,561 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-08 02:45:36,564 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-08 02:45:36,583 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-08 02:45:36,583 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-08 02:45:36,583 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-08 02:45:36,583 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-08 02:45:36,583 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-08 02:45:36,583 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-08 02:45:36,637 INFO L256 CfgBuilder]: Building ICFG [2025-03-08 02:45:36,639 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-08 02:45:41,024 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-03-08 02:45:41,024 INFO L307 CfgBuilder]: Performing block encoding [2025-03-08 02:45:41,030 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-08 02:45:41,030 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-08 02:45:41,030 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:45:41 BoogieIcfgContainer [2025-03-08 02:45:41,030 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-08 02:45:41,032 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-08 02:45:41,032 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-08 02:45:41,035 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-08 02:45:41,036 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.03 02:45:36" (1/3) ... [2025-03-08 02:45:41,036 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@28d235f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:45:41, skipping insertion in model container [2025-03-08 02:45:41,037 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.03 02:45:36" (2/3) ... [2025-03-08 02:45:41,037 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@28d235f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.03 02:45:41, skipping insertion in model container [2025-03-08 02:45:41,037 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.03 02:45:41" (3/3) ... [2025-03-08 02:45:41,038 INFO L128 eAbstractionObserver]: Analyzing ICFG filter2.c [2025-03-08 02:45:41,049 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-08 02:45:41,051 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG filter2.c that has 2 procedures, 19 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-08 02:45:41,088 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-08 02:45:41,095 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;@a1d4593, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-08 02:45:41,095 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-08 02:45:41,098 INFO L276 IsEmpty]: Start isEmpty. Operand has 19 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-03-08 02:45:41,101 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2025-03-08 02:45:41,102 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 02:45:41,102 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 02:45:41,102 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 02:45:41,105 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 02:45:41,106 INFO L85 PathProgramCache]: Analyzing trace with hash 1182601517, now seen corresponding path program 1 times [2025-03-08 02:45:41,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 02:45:41,112 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [959276138] [2025-03-08 02:45:41,112 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 02:45:41,112 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-08 02:45:41,112 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 02:45:41,114 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-08 02:45:41,115 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2025-03-08 02:45:41,147 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-03-08 02:45:42,059 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-03-08 02:45:42,060 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 02:45:42,060 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 02:45:42,104 INFO L256 TraceCheckSpWp]: Trace formula consists of 48 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-08 02:45:42,107 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 02:45:42,123 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2025-03-08 02:45:42,123 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-08 02:45:42,123 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-08 02:45:42,123 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [959276138] [2025-03-08 02:45:42,123 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [959276138] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-08 02:45:42,124 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-08 02:45:42,124 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-08 02:45:42,125 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1885970118] [2025-03-08 02:45:42,126 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-08 02:45:42,128 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-08 02:45:42,129 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-08 02:45:42,140 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-08 02:45:42,140 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 02:45:42,142 INFO L87 Difference]: Start difference. First operand has 19 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2025-03-08 02:45:42,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-08 02:45:42,168 INFO L93 Difference]: Finished difference Result 35 states and 45 transitions. [2025-03-08 02:45:42,169 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-08 02:45:42,170 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 22 [2025-03-08 02:45:42,170 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-08 02:45:42,173 INFO L225 Difference]: With dead ends: 35 [2025-03-08 02:45:42,173 INFO L226 Difference]: Without dead ends: 16 [2025-03-08 02:45:42,175 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-08 02:45:42,176 INFO L435 NwaCegarLoop]: 21 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, 21 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-03-08 02:45:42,176 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-08 02:45:42,185 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states. [2025-03-08 02:45:42,192 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2025-03-08 02:45:42,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 11 states have (on average 1.0909090909090908) internal successors, (12), 11 states have internal predecessors, (12), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-03-08 02:45:42,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 18 transitions. [2025-03-08 02:45:42,200 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 18 transitions. Word has length 22 [2025-03-08 02:45:42,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-08 02:45:42,200 INFO L471 AbstractCegarLoop]: Abstraction has 16 states and 18 transitions. [2025-03-08 02:45:42,200 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 1 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2025-03-08 02:45:42,200 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 18 transitions. [2025-03-08 02:45:42,201 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2025-03-08 02:45:42,201 INFO L210 NwaCegarLoop]: Found error trace [2025-03-08 02:45:42,201 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-08 02:45:42,230 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2025-03-08 02:45:42,401 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-08 02:45:42,401 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-08 02:45:42,402 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-08 02:45:42,402 INFO L85 PathProgramCache]: Analyzing trace with hash -79244692, now seen corresponding path program 1 times [2025-03-08 02:45:42,402 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-08 02:45:42,403 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1365312075] [2025-03-08 02:45:42,403 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-08 02:45:42,403 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-03-08 02:45:42,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-08 02:45:42,405 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-03-08 02:45:42,409 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2025-03-08 02:45:42,434 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-03-08 02:45:48,271 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-03-08 02:45:48,271 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-08 02:45:48,271 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-08 02:45:48,331 INFO L256 TraceCheckSpWp]: Trace formula consists of 48 conjuncts, 20 conjuncts are in the unsatisfiable core [2025-03-08 02:45:48,335 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-08 02:46:00,368 WARN L286 SmtUtils]: Spent 8.17s 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) [2025-03-08 02:46:08,545 WARN L286 SmtUtils]: Spent 8.18s on a formula simplification that was a NOOP. DAG size: 5 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-08 02:46:16,649 WARN L286 SmtUtils]: Spent 8.10s on a formula simplification that was a NOOP. DAG size: 27 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-08 02:46:24,838 WARN L286 SmtUtils]: Spent 8.19s 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) [2025-03-08 02:46:32,937 WARN L286 SmtUtils]: Spent 8.10s on a formula simplification that was a NOOP. DAG size: 28 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-08 02:46:41,127 WARN L286 SmtUtils]: Spent 8.19s on a formula simplification that was a NOOP. DAG size: 5 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-08 02:46:49,313 WARN L286 SmtUtils]: Spent 8.18s 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) [2025-03-08 02:46:57,496 WARN L286 SmtUtils]: Spent 8.18s on a formula simplification that was a NOOP. DAG size: 26 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-08 02:47:05,692 WARN L286 SmtUtils]: Spent 8.19s on a formula simplification that was a NOOP. DAG size: 5 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-03-08 02:47:13,889 WARN L286 SmtUtils]: Spent 8.20s on a formula simplification that was a NOOP. DAG size: 27 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify)