./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/float-benchs/filter2_set.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c00e63dc Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-benchs/filter2_set.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/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 1052e6ec9925823ba5a2ccaaebf89a3336e5de0f5b82a0218158837daebc1dd1 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-05 12:43:27,933 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-05 12:43:28,006 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-02-05 12:43:28,014 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-05 12:43:28,014 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-05 12:43:28,033 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-05 12:43:28,034 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-05 12:43:28,034 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-05 12:43:28,034 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-05 12:43:28,034 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-05 12:43:28,034 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-05 12:43:28,035 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-05 12:43:28,035 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-05 12:43:28,035 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-05 12:43:28,035 INFO L153 SettingsManager]: * Use SBE=true [2025-02-05 12:43:28,035 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-05 12:43:28,035 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-05 12:43:28,036 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-05 12:43:28,037 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-05 12:43:28,037 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-05 12:43:28,037 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-05 12:43:28,037 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-05 12:43:28,037 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-05 12:43:28,037 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-05 12:43:28,037 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:28,037 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-05 12:43:28,037 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-05 12:43:28,038 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-05 12:43:28,038 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-jdk21/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 -> 1052e6ec9925823ba5a2ccaaebf89a3336e5de0f5b82a0218158837daebc1dd1 [2025-02-05 12:43:28,323 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-05 12:43:28,332 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-05 12:43:28,335 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-05 12:43:28,336 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-05 12:43:28,336 INFO L274 PluginConnector]: CDTParser initialized [2025-02-05 12:43:28,338 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-benchs/filter2_set.c [2025-02-05 12:43:29,645 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/fe94bf2a1/fb04d941aeea4d56970bce420a71f565/FLAGa80a3993e [2025-02-05 12:43:29,924 INFO L384 CDTParser]: Found 1 translation units. [2025-02-05 12:43:29,924 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_set.c [2025-02-05 12:43:29,934 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/fe94bf2a1/fb04d941aeea4d56970bce420a71f565/FLAGa80a3993e [2025-02-05 12:43:29,950 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/fe94bf2a1/fb04d941aeea4d56970bce420a71f565 [2025-02-05 12:43:29,952 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-05 12:43:29,954 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-05 12:43:29,955 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:29,955 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-05 12:43:29,959 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-05 12:43:29,959 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,960 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1d2f333a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29, skipping insertion in model container [2025-02-05 12:43:29,960 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,973 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-05 12:43:30,115 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_set.c[664,677] [2025-02-05 12:43:30,138 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:30,148 INFO L200 MainTranslator]: Completed pre-run [2025-02-05 12:43:30,158 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_set.c[664,677] [2025-02-05 12:43:30,168 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:30,187 INFO L204 MainTranslator]: Completed translation [2025-02-05 12:43:30,188 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30 WrapperNode [2025-02-05 12:43:30,188 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:30,190 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:30,190 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-05 12:43:30,191 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-05 12:43:30,196 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,202 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,216 INFO L138 Inliner]: procedures = 14, calls = 16, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 74 [2025-02-05 12:43:30,217 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:30,217 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-05 12:43:30,217 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-05 12:43:30,217 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-05 12:43:30,223 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,224 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,225 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,234 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-02-05 12:43:30,234 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,234 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,237 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,238 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,239 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,239 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,241 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-05 12:43:30,241 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-05 12:43:30,242 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-05 12:43:30,242 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-05 12:43:30,243 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (1/1) ... [2025-02-05 12:43:30,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:30,257 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 12:43:30,269 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-05 12:43:30,271 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-05 12:43:30,288 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-05 12:43:30,288 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-05 12:43:30,288 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-05 12:43:30,288 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-05 12:43:30,288 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-05 12:43:30,288 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-05 12:43:30,334 INFO L257 CfgBuilder]: Building ICFG [2025-02-05 12:43:30,336 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-05 12:43:30,470 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-02-05 12:43:30,470 INFO L308 CfgBuilder]: Performing block encoding [2025-02-05 12:43:30,478 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-05 12:43:30,479 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-05 12:43:30,479 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:30 BoogieIcfgContainer [2025-02-05 12:43:30,479 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-05 12:43:30,482 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-05 12:43:30,482 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-05 12:43:30,486 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-05 12:43:30,487 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 05.02 12:43:29" (1/3) ... [2025-02-05 12:43:30,487 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10e34f8e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:30, skipping insertion in model container [2025-02-05 12:43:30,488 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:30" (2/3) ... [2025-02-05 12:43:30,488 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10e34f8e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:30, skipping insertion in model container [2025-02-05 12:43:30,488 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:30" (3/3) ... [2025-02-05 12:43:30,489 INFO L128 eAbstractionObserver]: Analyzing ICFG filter2_set.c [2025-02-05 12:43:30,505 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-05 12:43:30,508 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG filter2_set.c that has 2 procedures, 25 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-05 12:43:30,562 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-05 12:43:30,573 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;@6ae62de3, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-05 12:43:30,575 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-05 12:43:30,580 INFO L276 IsEmpty]: Start isEmpty. Operand has 25 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-02-05 12:43:30,587 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2025-02-05 12:43:30,588 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:30,588 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-02-05 12:43:30,589 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:30,593 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:30,594 INFO L85 PathProgramCache]: Analyzing trace with hash 98819238, now seen corresponding path program 1 times [2025-02-05 12:43:30,601 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-05 12:43:30,602 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1780782934] [2025-02-05 12:43:30,602 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:30,605 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-05 12:43:30,678 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-05 12:43:30,694 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-05 12:43:30,695 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:30,696 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:30,752 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-02-05 12:43:30,753 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-05 12:43:30,753 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1780782934] [2025-02-05 12:43:30,754 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1780782934] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-05 12:43:30,754 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1802274750] [2025-02-05 12:43:30,754 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:30,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-05 12:43:30,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 12:43:30,756 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-05 12:43:30,759 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-02-05 12:43:30,813 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-05 12:43:30,838 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-05 12:43:30,838 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:30,838 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:30,841 INFO L256 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-05 12:43:30,845 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-05 12:43:30,861 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-02-05 12:43:30,863 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-05 12:43:30,863 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1802274750] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-05 12:43:30,863 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-02-05 12:43:30,864 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-02-05 12:43:30,866 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1111345188] [2025-02-05 12:43:30,867 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-05 12:43:30,870 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-05 12:43:30,871 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-05 12:43:30,884 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-05 12:43:30,884 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-05 12:43:30,886 INFO L87 Difference]: Start difference. First operand has 25 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-02-05 12:43:30,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-05 12:43:30,899 INFO L93 Difference]: Finished difference Result 47 states and 72 transitions. [2025-02-05 12:43:30,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-05 12:43:30,901 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) Word has length 48 [2025-02-05 12:43:30,901 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-05 12:43:30,906 INFO L225 Difference]: With dead ends: 47 [2025-02-05 12:43:30,906 INFO L226 Difference]: Without dead ends: 22 [2025-02-05 12:43:30,909 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 49 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-02-05 12:43:30,911 INFO L435 NwaCegarLoop]: 32 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, 32 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-02-05 12:43:30,913 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-05 12:43:30,924 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states. [2025-02-05 12:43:30,938 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 22. [2025-02-05 12:43:30,939 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 12 states have internal predecessors, (13), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-02-05 12:43:30,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 29 transitions. [2025-02-05 12:43:30,945 INFO L78 Accepts]: Start accepts. Automaton has 22 states and 29 transitions. Word has length 48 [2025-02-05 12:43:30,945 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-05 12:43:30,945 INFO L471 AbstractCegarLoop]: Abstraction has 22 states and 29 transitions. [2025-02-05 12:43:30,945 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-02-05 12:43:30,945 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 29 transitions. [2025-02-05 12:43:30,947 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2025-02-05 12:43:30,947 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:30,947 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-02-05 12:43:30,953 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-02-05 12:43:31,148 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-02-05 12:43:31,148 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:31,149 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:31,149 INFO L85 PathProgramCache]: Analyzing trace with hash -1458817532, now seen corresponding path program 1 times [2025-02-05 12:43:31,149 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-05 12:43:31,149 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [93419379] [2025-02-05 12:43:31,149 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:31,149 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-05 12:43:31,163 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-05 12:43:31,193 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-05 12:43:31,194 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:31,194 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-05 12:43:31,194 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-05 12:43:31,202 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-05 12:43:31,232 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-05 12:43:31,233 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:31,233 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-05 12:43:31,259 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-05 12:43:31,259 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-02-05 12:43:31,260 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-02-05 12:43:31,262 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-02-05 12:43:31,265 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-02-05 12:43:31,282 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-05 12:43:31,285 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 05.02 12:43:31 BoogieIcfgContainer [2025-02-05 12:43:31,285 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-05 12:43:31,285 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-05 12:43:31,285 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-05 12:43:31,285 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-05 12:43:31,286 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:30" (3/4) ... [2025-02-05 12:43:31,288 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-02-05 12:43:31,289 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-05 12:43:31,290 INFO L158 Benchmark]: Toolchain (without parser) took 1336.03ms. Allocated memory is still 201.3MB. Free memory was 155.9MB in the beginning and 97.4MB in the end (delta: 58.5MB). Peak memory consumption was 58.7MB. Max. memory is 16.1GB. [2025-02-05 12:43:31,290 INFO L158 Benchmark]: CDTParser took 0.25ms. Allocated memory is still 201.3MB. Free memory is still 118.1MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 12:43:31,290 INFO L158 Benchmark]: CACSL2BoogieTranslator took 234.23ms. Allocated memory is still 201.3MB. Free memory was 155.9MB in the beginning and 144.6MB in the end (delta: 11.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-05 12:43:31,291 INFO L158 Benchmark]: Boogie Procedure Inliner took 26.88ms. Allocated memory is still 201.3MB. Free memory was 144.6MB in the beginning and 143.4MB in the end (delta: 1.1MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 12:43:31,291 INFO L158 Benchmark]: Boogie Preprocessor took 23.50ms. Allocated memory is still 201.3MB. Free memory was 143.4MB in the beginning and 142.0MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 12:43:31,291 INFO L158 Benchmark]: IcfgBuilder took 238.04ms. Allocated memory is still 201.3MB. Free memory was 142.0MB in the beginning and 130.3MB in the end (delta: 11.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-02-05 12:43:31,291 INFO L158 Benchmark]: TraceAbstraction took 802.80ms. Allocated memory is still 201.3MB. Free memory was 129.9MB in the beginning and 97.4MB in the end (delta: 32.5MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2025-02-05 12:43:31,292 INFO L158 Benchmark]: Witness Printer took 3.65ms. Allocated memory is still 201.3MB. Free memory is still 97.4MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 12:43:31,293 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.25ms. Allocated memory is still 201.3MB. Free memory is still 118.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 234.23ms. Allocated memory is still 201.3MB. Free memory was 155.9MB in the beginning and 144.6MB in the end (delta: 11.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 26.88ms. Allocated memory is still 201.3MB. Free memory was 144.6MB in the beginning and 143.4MB in the end (delta: 1.1MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 23.50ms. Allocated memory is still 201.3MB. Free memory was 143.4MB in the beginning and 142.0MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 238.04ms. Allocated memory is still 201.3MB. Free memory was 142.0MB in the beginning and 130.3MB in the end (delta: 11.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 802.80ms. Allocated memory is still 201.3MB. Free memory was 129.9MB in the beginning and 97.4MB in the end (delta: 32.5MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * Witness Printer took 3.65ms. Allocated memory is still 201.3MB. Free memory is still 97.4MB. 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 55, overapproximation of someBinaryDOUBLEComparisonOperation at line 31, overapproximation of someBinaryDOUBLEComparisonOperation at line 34, overapproximation of someBinaryDOUBLEComparisonOperation at line 40, overapproximation of someBinaryDOUBLEComparisonOperation at line 51, overapproximation of someBinaryDOUBLEComparisonOperation at line 35, overapproximation of someBinaryDOUBLEComparisonOperation at line 32, overapproximation of someBinaryDOUBLEComparisonOperation at line 41, overapproximation of someBinaryDOUBLEComparisonOperation at line 33, overapproximation of someBinaryDOUBLEComparisonOperation at line 57, overapproximation of to_real at line 43. Possible FailurePath: [L22] double E, E0, E1, S0, S1, S; [L23] double A1, A2, A3, B1, B2; [L24] int i; [L26] A1 = __VERIFIER_nondet_double() [L27] A2 = __VERIFIER_nondet_double() [L28] A3 = __VERIFIER_nondet_double() [L29] B1 = __VERIFIER_nondet_double() [L30] B2 = __VERIFIER_nondet_double() [L31] CALL assume_abort_if_not(A1 >= 0.69 && A1 <= 0.71) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L31] RET assume_abort_if_not(A1 >= 0.69 && A1 <= 0.71) [L32] CALL assume_abort_if_not(A2 >= -1.31 && A2 <= -1.29) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L32] RET assume_abort_if_not(A2 >= -1.31 && A2 <= -1.29) [L33] CALL assume_abort_if_not(A3 >= 1.09 && A3 <= 1.11) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L33] RET assume_abort_if_not(A3 >= 1.09 && A3 <= 1.11) [L34] CALL assume_abort_if_not(B1 >= 1.39 && B1 <= 1.41) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L34] RET assume_abort_if_not(B1 >= 1.39 && B1 <= 1.41) [L35] CALL assume_abort_if_not(B2 >= -0.71 && B2 <= -0.69) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L35] RET assume_abort_if_not(B2 >= -0.71 && B2 <= -0.69) [L38] E = __VERIFIER_nondet_double() [L39] E0 = __VERIFIER_nondet_double() [L40] CALL assume_abort_if_not(E >= 0. && E <= 1.) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L40] RET assume_abort_if_not(E >= 0. && E <= 1.) [L41] CALL assume_abort_if_not(E0 >= 0. && E0 <= 1.) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L41] RET assume_abort_if_not(E0 >= 0. && E0 <= 1.) [L43] S0 = 0 [L44] S = 0 [L46] i = 0 VAL [i=0] [L46] COND TRUE i <= 1000000 [L47] E1 = E0 [L48] E0 = E [L50] E = __VERIFIER_nondet_double() [L51] CALL assume_abort_if_not(E >= 0. && E <= 1.) VAL [\old(cond)=1] [L15] COND FALSE !(!cond) VAL [\old(cond)=1] [L51] RET assume_abort_if_not(E >= 0. && E <= 1.) VAL [E0=54, i=0] [L53] S1 = S0 [L54] S0 = S [L55] S = A1*E - E0*A2 + E1*A3 + S0*B1 + S1*B2 [L57] CALL __VERIFIER_assert(S >= -100. && S <= 100.) [L17] COND TRUE !(cond) [L17] reach_error() - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 25 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.7s, OverallIterations: 2, TraceHistogramMax: 8, 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, 32 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, 32 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 49 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=25occurred 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.1s InterpolantComputationTime, 144 NumberOfCodeBlocks, 144 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 94 ConstructedInterpolants, 0 QuantifiedInterpolants, 94 SizeOfPredicates, 0 NumberOfNonLiveVariables, 113 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 210/224 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-02-05 12:43:31,314 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-benchs/filter2_set.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/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 1052e6ec9925823ba5a2ccaaebf89a3336e5de0f5b82a0218158837daebc1dd1 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-05 12:43:33,633 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-05 12:43:33,767 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-02-05 12:43:33,776 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-05 12:43:33,776 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-05 12:43:33,805 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-05 12:43:33,806 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-05 12:43:33,806 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-05 12:43:33,807 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-05 12:43:33,807 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-05 12:43:33,807 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-05 12:43:33,807 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-05 12:43:33,808 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Use SBE=true [2025-02-05 12:43:33,808 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-05 12:43:33,808 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-02-05 12:43:33,810 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-02-05 12:43:33,810 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-05 12:43:33,810 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-05 12:43:33,810 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-05 12:43:33,810 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-05 12:43:33,811 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-05 12:43:33,811 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-05 12:43:33,811 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-05 12:43:33,811 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-05 12:43:33,811 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:33,812 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-05 12:43:33,812 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-05 12:43:33,813 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-05 12:43:33,813 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-jdk21/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 -> 1052e6ec9925823ba5a2ccaaebf89a3336e5de0f5b82a0218158837daebc1dd1 [2025-02-05 12:43:34,109 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-05 12:43:34,116 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-05 12:43:34,118 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-05 12:43:34,121 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-05 12:43:34,122 INFO L274 PluginConnector]: CDTParser initialized [2025-02-05 12:43:34,124 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-benchs/filter2_set.c [2025-02-05 12:43:35,539 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/da225c00f/df1ff9ad434c4468af452ffa4803c528/FLAG70e6132ce [2025-02-05 12:43:35,724 INFO L384 CDTParser]: Found 1 translation units. [2025-02-05 12:43:35,724 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_set.c [2025-02-05 12:43:35,731 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/da225c00f/df1ff9ad434c4468af452ffa4803c528/FLAG70e6132ce [2025-02-05 12:43:35,745 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/da225c00f/df1ff9ad434c4468af452ffa4803c528 [2025-02-05 12:43:35,747 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-05 12:43:35,748 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-05 12:43:35,749 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:35,749 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-05 12:43:35,753 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-05 12:43:35,754 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:35,754 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1bc4e2ea and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35, skipping insertion in model container [2025-02-05 12:43:35,755 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:35,769 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-05 12:43:35,906 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_set.c[664,677] [2025-02-05 12:43:35,932 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:35,948 INFO L200 MainTranslator]: Completed pre-run [2025-02-05 12:43:35,957 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_set.c[664,677] [2025-02-05 12:43:35,968 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:35,987 INFO L204 MainTranslator]: Completed translation [2025-02-05 12:43:35,988 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35 WrapperNode [2025-02-05 12:43:35,988 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:35,990 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:35,990 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-05 12:43:35,990 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-05 12:43:35,995 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,008 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,024 INFO L138 Inliner]: procedures = 15, calls = 16, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 75 [2025-02-05 12:43:36,026 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:36,027 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-05 12:43:36,027 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-05 12:43:36,027 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-05 12:43:36,034 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,035 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,037 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,051 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-02-05 12:43:36,052 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,052 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,063 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,064 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,066 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,066 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,072 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-05 12:43:36,073 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-05 12:43:36,073 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-05 12:43:36,073 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-05 12:43:36,074 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (1/1) ... [2025-02-05 12:43:36,081 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:36,092 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 12:43:36,105 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-05 12:43:36,113 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-05 12:43:36,133 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-05 12:43:36,133 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-02-05 12:43:36,133 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-05 12:43:36,133 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-05 12:43:36,133 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-05 12:43:36,133 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-05 12:43:36,183 INFO L257 CfgBuilder]: Building ICFG [2025-02-05 12:43:36,185 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-05 12:43:40,741 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-02-05 12:43:40,744 INFO L308 CfgBuilder]: Performing block encoding [2025-02-05 12:43:40,751 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-05 12:43:40,752 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-05 12:43:40,753 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:40 BoogieIcfgContainer [2025-02-05 12:43:40,753 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-05 12:43:40,756 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-05 12:43:40,756 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-05 12:43:40,760 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-05 12:43:40,761 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 05.02 12:43:35" (1/3) ... [2025-02-05 12:43:40,762 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@70743038 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:40, skipping insertion in model container [2025-02-05 12:43:40,762 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:35" (2/3) ... [2025-02-05 12:43:40,762 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@70743038 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:40, skipping insertion in model container [2025-02-05 12:43:40,762 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:40" (3/3) ... [2025-02-05 12:43:40,763 INFO L128 eAbstractionObserver]: Analyzing ICFG filter2_set.c [2025-02-05 12:43:40,775 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-05 12:43:40,777 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG filter2_set.c that has 2 procedures, 25 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-05 12:43:40,818 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-05 12:43:40,830 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;@a397b93, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-05 12:43:40,831 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-05 12:43:40,834 INFO L276 IsEmpty]: Start isEmpty. Operand has 25 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-02-05 12:43:40,842 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2025-02-05 12:43:40,843 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:40,843 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-02-05 12:43:40,844 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:40,849 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:40,849 INFO L85 PathProgramCache]: Analyzing trace with hash 98819238, now seen corresponding path program 1 times [2025-02-05 12:43:40,859 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-05 12:43:40,859 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1758519204] [2025-02-05 12:43:40,862 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:40,862 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-02-05 12:43:40,862 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-05 12:43:40,865 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/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-02-05 12:43:40,867 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-05 12:43:40,915 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-05 12:43:41,827 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-05 12:43:41,827 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:41,827 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:41,868 INFO L256 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-05 12:43:41,872 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-05 12:43:41,893 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 62 proven. 0 refuted. 0 times theorem prover too weak. 50 trivial. 0 not checked. [2025-02-05 12:43:41,894 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-05 12:43:41,894 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-02-05 12:43:41,894 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1758519204] [2025-02-05 12:43:41,895 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1758519204] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-05 12:43:41,895 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-05 12:43:41,895 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-02-05 12:43:41,896 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1179569874] [2025-02-05 12:43:41,897 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-05 12:43:41,899 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-05 12:43:41,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-02-05 12:43:41,915 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-05 12:43:41,915 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-05 12:43:41,918 INFO L87 Difference]: Start difference. First operand has 25 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 15 states have internal predecessors, (18), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 7.5) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-02-05 12:43:41,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-05 12:43:41,931 INFO L93 Difference]: Finished difference Result 47 states and 72 transitions. [2025-02-05 12:43:41,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-05 12:43:41,933 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 7.5) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 48 [2025-02-05 12:43:41,933 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-05 12:43:41,938 INFO L225 Difference]: With dead ends: 47 [2025-02-05 12:43:41,938 INFO L226 Difference]: Without dead ends: 22 [2025-02-05 12:43:41,942 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 47 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-02-05 12:43:41,945 INFO L435 NwaCegarLoop]: 32 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, 32 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-02-05 12:43:41,946 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-05 12:43:41,956 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states. [2025-02-05 12:43:41,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 22. [2025-02-05 12:43:41,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 12 states have internal predecessors, (13), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-02-05 12:43:41,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 29 transitions. [2025-02-05 12:43:41,973 INFO L78 Accepts]: Start accepts. Automaton has 22 states and 29 transitions. Word has length 48 [2025-02-05 12:43:41,974 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-05 12:43:41,975 INFO L471 AbstractCegarLoop]: Abstraction has 22 states and 29 transitions. [2025-02-05 12:43:41,975 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 7.5) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-02-05 12:43:41,975 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 29 transitions. [2025-02-05 12:43:41,977 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2025-02-05 12:43:41,977 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:41,978 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 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-02-05 12:43:42,009 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-05 12:43:42,179 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/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-02-05 12:43:42,179 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:42,180 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:42,180 INFO L85 PathProgramCache]: Analyzing trace with hash -1458817532, now seen corresponding path program 1 times [2025-02-05 12:43:42,181 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-05 12:43:42,181 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1450408976] [2025-02-05 12:43:42,181 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:42,181 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-02-05 12:43:42,181 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-05 12:43:42,185 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/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-02-05 12:43:42,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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-02-05 12:43:42,219 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-05 12:43:49,584 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-05 12:43:49,584 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:49,584 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:49,695 INFO L256 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 35 conjuncts are in the unsatisfiable core [2025-02-05 12:43:49,706 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-05 12:44:14,776 WARN L286 SmtUtils]: Spent 8.36s 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-02-05 12:44:23,180 WARN L286 SmtUtils]: Spent 8.40s 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-02-05 12:44:31,421 WARN L286 SmtUtils]: Spent 8.24s on a formula simplification that was a NOOP. DAG size: 25 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:39,828 WARN L286 SmtUtils]: Spent 8.40s 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-02-05 12:44:48,075 WARN L286 SmtUtils]: Spent 8.25s on a formula simplification that was a NOOP. DAG size: 24 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:56,490 WARN L286 SmtUtils]: Spent 8.41s 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-02-05 12:45:04,915 WARN L286 SmtUtils]: Spent 8.33s on a formula simplification. DAG size of input: 24 DAG size of output: 1 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify)