From e8f5fb9a90ab977994ace727b812ec5d9bdc96a3 Mon Sep 17 00:00:00 2001
From: Sergey Bozhko <sbozhko@mpi-sws.org>
Date: Fri, 13 Oct 2023 15:02:21 +0000
Subject: [PATCH] import ssreflect only once

Prosa redefines ssreflect's tactic [done] in file [util/tactics.v]. To prevent shadowing of the new [done] by ssreflect's [done], [tactics.v] should be imported _after_ ssreflect
---
 README.md                                              | 10 ++++++++++
 analysis/abstract/ideal/abstract_rta.v                 |  2 --
 analysis/abstract/search_space.v                       |  1 -
 analysis/definitions/carry_in.v                        |  1 -
 analysis/definitions/completion_sequence.v             |  1 -
 analysis/definitions/hyperperiod.v                     |  1 -
 analysis/facts/model/ideal/service_of_jobs.v           |  2 --
 analysis/facts/model/service_of_jobs.v                 |  4 +---
 analysis/facts/tdma.v                                  |  1 -
 analysis/facts/transform/edf_opt.v                     |  1 -
 analysis/facts/transform/wc_correctness.v              |  2 --
 analysis/transform/prefix.v                            |  1 -
 behavior/arrival_sequence.v                            |  1 -
 behavior/job.v                                         |  2 +-
 behavior/ready.v                                       |  1 -
 behavior/schedule.v                                    |  1 -
 doc/guidelines.md                                      |  2 +-
 .../definitions/extrapolated_arrival_curve.v           |  1 -
 implementation/facts/extrapolated_arrival_curve.v      |  1 -
 implementation/facts/generic_schedule.v                |  1 -
 model/priority/definitions.v                           |  2 --
 model/processor/ideal.v                                |  1 -
 model/processor/multiprocessor.v                       |  1 -
 model/processor/spin.v                                 |  1 -
 model/processor/varspeed.v                             |  1 -
 model/readiness/jitter.v                               |  2 --
 model/schedule/edf.v                                   |  1 -
 model/schedule/tdma.v                                  |  1 -
 results/edf/rta/bounded_pi.v                           |  2 --
 results/edf/rta/floating_nonpreemptive.v               |  2 --
 results/edf/rta/fully_nonpreemptive.v                  |  2 --
 results/edf/rta/fully_preemptive.v                     |  2 --
 results/edf/rta/limited_preemptive.v                   |  2 --
 results/elf/generality.v                               |  1 -
 results/elf/rta/bounded_pi.v                           |  2 --
 results/fifo/rta.v                                     |  2 --
 results/fixed_priority/rta/comp/fully_preemptive.v     |  2 --
 results/fixed_priority/rta/floating_nonpreemptive.v    |  2 --
 results/fixed_priority/rta/fully_nonpreemptive.v       |  2 --
 results/fixed_priority/rta/fully_preemptive.v          |  2 --
 results/fixed_priority/rta/limited_preemptive.v        |  2 --
 results/gel/generality.v                               |  1 -
 results/gel/rta/bounded_pi.v                           |  1 -
 util/all.v                                             |  4 +++-
 44 files changed, 16 insertions(+), 62 deletions(-)

diff --git a/README.md b/README.md
index fcf386b3a..e1c750a57 100644
--- a/README.md
+++ b/README.md
@@ -40,6 +40,16 @@ Furthermore, there are a couple of additional folders and modules.
 - [`util`](util/): A collection of miscellaneous "helper" lemmas and tactics. Used throughout the rest of Prosa.
 - [`scripts/`](scripts/): Scripts and supporting resources required for continuous integration and documentation generation.
 
+
+## Side-effects
+
+Importing Prosa changes the behavior of ssreflect's `done` tactic by adding basic lemmas about real-time systems.
+
+```
+Ltac done := solve [ ssreflect.done | eauto 4 with basic_rt_facts ].
+```
+
+
 ## Installation
 
 ### With the OCaml Package Manager (`opam`)
diff --git a/analysis/abstract/ideal/abstract_rta.v b/analysis/abstract/ideal/abstract_rta.v
index 50695a0e0..18d4ab502 100644
--- a/analysis/abstract/ideal/abstract_rta.v
+++ b/analysis/abstract/ideal/abstract_rta.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.analysis.facts.model.ideal.schedule.
 Require Export prosa.analysis.definitions.schedulability.
 Require Export prosa.analysis.abstract.search_space.
diff --git a/analysis/abstract/search_space.v b/analysis/abstract/search_space.v
index b52a3559c..6e3291a51 100644
--- a/analysis/abstract/search_space.v
+++ b/analysis/abstract/search_space.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
 Require Import prosa.util.epsilon.
 Require Import prosa.util.tactics.
 Require Import prosa.model.task.concept.
diff --git a/analysis/definitions/carry_in.v b/analysis/definitions/carry_in.v
index dc49b2269..8196290f3 100644
--- a/analysis/definitions/carry_in.v
+++ b/analysis/definitions/carry_in.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq fintype bigop.
 Require Export prosa.model.priority.classes.
 
 (** * No Carry-In *)
diff --git a/analysis/definitions/completion_sequence.v b/analysis/definitions/completion_sequence.v
index c3a34a49e..5c86391f1 100644
--- a/analysis/definitions/completion_sequence.v
+++ b/analysis/definitions/completion_sequence.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export ssreflect seq ssrnat ssrbool eqtype.
 Require Import prosa.behavior.service.
 
 (** This module contains basic definitions and properties of job
diff --git a/analysis/definitions/hyperperiod.v b/analysis/definitions/hyperperiod.v
index a3754188b..158ebeb5e 100644
--- a/analysis/definitions/hyperperiod.v
+++ b/analysis/definitions/hyperperiod.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import div.
 Require Export prosa.model.task.arrival.periodic.
 Require Export prosa.util.lcmseq.
 
diff --git a/analysis/facts/model/ideal/service_of_jobs.v b/analysis/facts/model/ideal/service_of_jobs.v
index 8fd510e37..e2d9ff4ab 100644
--- a/analysis/facts/model/ideal/service_of_jobs.v
+++ b/analysis/facts/model/ideal/service_of_jobs.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq fintype bigop.
-
 Require Export prosa.model.schedule.scheduled.
 Require Export prosa.model.aggregate.workload.
 Require Export prosa.model.aggregate.service_of_jobs.
diff --git a/analysis/facts/model/service_of_jobs.v b/analysis/facts/model/service_of_jobs.v
index 54256026c..d59a9cb21 100644
--- a/analysis/facts/model/service_of_jobs.v
+++ b/analysis/facts/model/service_of_jobs.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq fintype bigop.
-
 Require Export prosa.model.aggregate.workload.
 Require Export prosa.model.aggregate.service_of_jobs.
 Require Export prosa.analysis.facts.behavior.completion.
@@ -270,7 +268,7 @@ Section UnitServiceModelLemmas.
           [by left |right]; apply negbT in EQU; rewrite leqNgt. }
       move: (F1 t_compl t1) => /orP [LT | GT].
       - rewrite /service_of_jobs /service_during in EQ.
-        rewrite exchange_big big_geq //= in EQ; last by rewrite ltnW.
+        rewrite exchange_big big_geq //= in EQ.
         rewrite /workload_of_jobs in EQ.
         rewrite (big_rem j) ?Pj //= in EQ.
         move: EQ => /eqP; rewrite addn_eq0; move => /andP [CZ _].
diff --git a/analysis/facts/tdma.v b/analysis/facts/tdma.v
index b10aa7954..6df95f339 100644
--- a/analysis/facts/tdma.v
+++ b/analysis/facts/tdma.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import div.
 Require Export prosa.model.schedule.tdma.
 Require Import prosa.util.all.
 
diff --git a/analysis/facts/transform/edf_opt.v b/analysis/facts/transform/edf_opt.v
index 5c21cd52f..688aefebe 100644
--- a/analysis/facts/transform/edf_opt.v
+++ b/analysis/facts/transform/edf_opt.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import ssrnat ssrbool fintype.
 Require Import prosa.model.readiness.basic.
 Require Export prosa.model.schedule.edf.
 Require Export prosa.analysis.definitions.schedulability.
diff --git a/analysis/facts/transform/wc_correctness.v b/analysis/facts/transform/wc_correctness.v
index 9c6670110..2eee23eb7 100644
--- a/analysis/facts/transform/wc_correctness.v
+++ b/analysis/facts/transform/wc_correctness.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq fintype bigop.
-
 Require Export prosa.model.schedule.work_conserving.
 Require Import prosa.model.readiness.basic.
 Require Export prosa.analysis.facts.model.ideal.schedule.
diff --git a/analysis/transform/prefix.v b/analysis/transform/prefix.v
index 82f976f51..08f5e2738 100644
--- a/analysis/transform/prefix.v
+++ b/analysis/transform/prefix.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import ssrnat ssrbool fintype.
 Require Export prosa.analysis.facts.behavior.all.
 
 (** This file provides an operation that transforms a finite prefix of
diff --git a/behavior/arrival_sequence.v b/behavior/arrival_sequence.v
index 4e9fde5ad..c10efb323 100644
--- a/behavior/arrival_sequence.v
+++ b/behavior/arrival_sequence.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export ssreflect seq ssrnat ssrbool bigop eqtype ssrfun.
 Require Export prosa.behavior.job.
 Require Export prosa.util.notation.
 
diff --git a/behavior/job.v b/behavior/job.v
index d008c8219..d9355ee3e 100644
--- a/behavior/job.v
+++ b/behavior/job.v
@@ -1,4 +1,4 @@
-From mathcomp Require Export eqtype ssrnat.
+Require Export prosa.util.all.
 Require Export prosa.behavior.time.
 
 (** * Notion of a Job Type *)
diff --git a/behavior/ready.v b/behavior/ready.v
index d41858ae4..bc759ae88 100644
--- a/behavior/ready.v
+++ b/behavior/ready.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export ssreflect ssrnat ssrbool eqtype fintype bigop.
 Require Export prosa.behavior.service.
 
 (** * Readiness of a Job *)
diff --git a/behavior/schedule.v b/behavior/schedule.v
index 5b8fcc5a4..9cb5b819e 100644
--- a/behavior/schedule.v
+++ b/behavior/schedule.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export ssreflect ssrnat ssrbool eqtype fintype bigop.
 Require Export prosa.behavior.arrival_sequence.
 
 (** * Generic Processor State Interface *)
diff --git a/doc/guidelines.md b/doc/guidelines.md
index 52e3cb331..0505a0284 100644
--- a/doc/guidelines.md
+++ b/doc/guidelines.md
@@ -96,7 +96,7 @@ Exception to this rule: ssreflect and other standard library imports.
 3. As an important exception to the prior rule, do not re-export modules that contain type class instance definitions. Prosa uses type class instances to express key modeling choices; such assumptions should be made explicitly.
 4. Always require external libraries first, i.e., *before* stating any Prosa-internal dependencies. This way, an addition in external libraries
 cannot shadow a definition in Prosa. For example, require `mathcomp` modules before any modules in the `prosa` namespace.
-
+5. Do not import `mathcomp` modules outside of  the `util/all.v` file. The file `util/tactics.v` redefined the behavior of the `done` tactic; hence, it must be imported after the `mathcomp` modules.
 
 ## Stating Lemmas and Theorems
 
diff --git a/implementation/definitions/extrapolated_arrival_curve.v b/implementation/definitions/extrapolated_arrival_curve.v
index 3cfa60b36..91e7c7ddf 100644
--- a/implementation/definitions/extrapolated_arrival_curve.v
+++ b/implementation/definitions/extrapolated_arrival_curve.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export ssreflect ssrbool eqtype ssrnat div seq path fintype bigop.
 Require Export prosa.behavior.time.
 Require Export prosa.util.all.
 
diff --git a/implementation/facts/extrapolated_arrival_curve.v b/implementation/facts/extrapolated_arrival_curve.v
index 1f77ace05..97e120f0e 100644
--- a/implementation/facts/extrapolated_arrival_curve.v
+++ b/implementation/facts/extrapolated_arrival_curve.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export ssreflect ssrbool eqtype ssrnat div seq path fintype bigop.
 Require Export prosa.behavior.time.
 Require Export prosa.util.all.
 Require Export prosa.implementation.definitions.extrapolated_arrival_curve.
diff --git a/implementation/facts/generic_schedule.v b/implementation/facts/generic_schedule.v
index 6de5e8de0..8b368c3e1 100644
--- a/implementation/facts/generic_schedule.v
+++ b/implementation/facts/generic_schedule.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export ssreflect ssrnat ssrbool eqtype fintype bigop.
 Require Export prosa.implementation.definitions.generic_scheduler.
 Require Export prosa.analysis.facts.transform.replace_at.
 
diff --git a/model/priority/definitions.v b/model/priority/definitions.v
index 92f63fa1d..c35939f6c 100644
--- a/model/priority/definitions.v
+++ b/model/priority/definitions.v
@@ -1,5 +1,3 @@
-From mathcomp Require Export seq.
-
 Require Export prosa.model.task.concept.
 Require Export prosa.util.rel.
 Require Export prosa.util.list.
diff --git a/model/processor/ideal.v b/model/processor/ideal.v
index 5f76b4afc..c9576e175 100644
--- a/model/processor/ideal.v
+++ b/model/processor/ideal.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import all_ssreflect.
 Require Export prosa.behavior.all.
 
 (** * The Ideal Uniprocessor Model *)
diff --git a/model/processor/multiprocessor.v b/model/processor/multiprocessor.v
index abe5efbab..a0faaa1cc 100644
--- a/model/processor/multiprocessor.v
+++ b/model/processor/multiprocessor.v
@@ -1,4 +1,3 @@
-From mathcomp Require Export fintype.
 Require Export prosa.behavior.all.
 Require Import prosa.analysis.facts.behavior.service.
 
diff --git a/model/processor/spin.v b/model/processor/spin.v
index ec68bf12c..9cce1357f 100644
--- a/model/processor/spin.v
+++ b/model/processor/spin.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import all_ssreflect.
 Require Export prosa.behavior.all.
 
 (** In the following, we define a processor state that includes the possibility
diff --git a/model/processor/varspeed.v b/model/processor/varspeed.v
index 817fdaa88..87393a987 100644
--- a/model/processor/varspeed.v
+++ b/model/processor/varspeed.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import all_ssreflect.
 Require Export prosa.behavior.all.
 
 (** In the following, we define a model of processors with variable execution
diff --git a/model/readiness/jitter.v b/model/readiness/jitter.v
index 816cf6cb1..ee35fef54 100644
--- a/model/readiness/jitter.v
+++ b/model/readiness/jitter.v
@@ -1,5 +1,3 @@
-From mathcomp Require Export ssreflect ssrnat ssrbool eqtype fintype bigop.
-
 Require Export prosa.behavior.all.
 Require Import prosa.util.nat.
 
diff --git a/model/schedule/edf.v b/model/schedule/edf.v
index 947d79c58..dcfcf7193 100644
--- a/model/schedule/edf.v
+++ b/model/schedule/edf.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import ssrnat ssrbool fintype.
 Require Export prosa.behavior.all.
 
 (** * Fully-Preemptive EDF Schedules *)
diff --git a/model/schedule/tdma.v b/model/schedule/tdma.v
index 2441b1e7e..c2d4a485b 100644
--- a/model/schedule/tdma.v
+++ b/model/schedule/tdma.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import div.
 Require Export prosa.model.task.concept.
 Require Export prosa.util.seqset.
 Require Export prosa.util.rel.
diff --git a/results/edf/rta/bounded_pi.v b/results/edf/rta/bounded_pi.v
index 9b0bc644d..c3be107a7 100644
--- a/results/edf/rta/bounded_pi.v
+++ b/results/edf/rta/bounded_pi.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.analysis.facts.priority.edf.
 Require Export prosa.analysis.definitions.schedulability.
 Require Import prosa.model.readiness.basic.
diff --git a/results/edf/rta/floating_nonpreemptive.v b/results/edf/rta/floating_nonpreemptive.v
index 61e215582..15f0d4090 100644
--- a/results/edf/rta/floating_nonpreemptive.v
+++ b/results/edf/rta/floating_nonpreemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Import prosa.model.readiness.basic.
 Require Export prosa.results.edf.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.rtc_threshold.floating.
diff --git a/results/edf/rta/fully_nonpreemptive.v b/results/edf/rta/fully_nonpreemptive.v
index 03912bdb2..b8fecdff0 100644
--- a/results/edf/rta/fully_nonpreemptive.v
+++ b/results/edf/rta/fully_nonpreemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Import prosa.model.readiness.basic.
 Require Export prosa.results.edf.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.task.nonpreemptive.
diff --git a/results/edf/rta/fully_preemptive.v b/results/edf/rta/fully_preemptive.v
index c3942cf47..06ac3de45 100644
--- a/results/edf/rta/fully_preemptive.v
+++ b/results/edf/rta/fully_preemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Import prosa.model.readiness.basic.
 Require Import prosa.results.edf.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.task.preemptive.
diff --git a/results/edf/rta/limited_preemptive.v b/results/edf/rta/limited_preemptive.v
index f70c1b064..2d96af80c 100644
--- a/results/edf/rta/limited_preemptive.v
+++ b/results/edf/rta/limited_preemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.model.readiness.basic.
 Require Export prosa.results.edf.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.rtc_threshold.limited.
diff --git a/results/elf/generality.v b/results/elf/generality.v
index c9d31d347..4185cd03a 100644
--- a/results/elf/generality.v
+++ b/results/elf/generality.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import eqtype ssrnat seq path fintype bigop.
 Require Export prosa.util.int.
 Require Export prosa.model.schedule.priority_driven.
 Require Export prosa.model.priority.elf.
diff --git a/results/elf/rta/bounded_pi.v b/results/elf/rta/bounded_pi.v
index 805e7b7e5..c72931a47 100644
--- a/results/elf/rta/bounded_pi.v
+++ b/results/elf/rta/bounded_pi.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop ssrZ.
-
 Require Import prosa.util.int.
 Require Export prosa.analysis.abstract.ideal.cumulative_bounds.
 Require Export prosa.analysis.facts.priority.elf.
diff --git a/results/fifo/rta.v b/results/fifo/rta.v
index b1f874465..acf80934b 100644
--- a/results/fifo/rta.v
+++ b/results/fifo/rta.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Import prosa.model.readiness.basic.
 Require Import prosa.model.priority.fifo.
 Require Import prosa.analysis.facts.priority.fifo.
diff --git a/results/fixed_priority/rta/comp/fully_preemptive.v b/results/fixed_priority/rta/comp/fully_preemptive.v
index ca6dc82b0..e8f17ffe4 100644
--- a/results/fixed_priority/rta/comp/fully_preemptive.v
+++ b/results/fixed_priority/rta/comp/fully_preemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.util.fixpoint.
 Require Export prosa.results.fixed_priority.rta.fully_preemptive.
 
diff --git a/results/fixed_priority/rta/floating_nonpreemptive.v b/results/fixed_priority/rta/floating_nonpreemptive.v
index 431649a01..862e36446 100644
--- a/results/fixed_priority/rta/floating_nonpreemptive.v
+++ b/results/fixed_priority/rta/floating_nonpreemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.results.fixed_priority.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.rtc_threshold.floating.
 Require Export prosa.analysis.facts.readiness.sequential.
diff --git a/results/fixed_priority/rta/fully_nonpreemptive.v b/results/fixed_priority/rta/fully_nonpreemptive.v
index f9557ec2a..9d71593e2 100644
--- a/results/fixed_priority/rta/fully_nonpreemptive.v
+++ b/results/fixed_priority/rta/fully_nonpreemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.results.fixed_priority.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.task.nonpreemptive.
 Require Export prosa.analysis.facts.preemption.rtc_threshold.nonpreemptive.
diff --git a/results/fixed_priority/rta/fully_preemptive.v b/results/fixed_priority/rta/fully_preemptive.v
index f32f85490..50300c5c2 100644
--- a/results/fixed_priority/rta/fully_preemptive.v
+++ b/results/fixed_priority/rta/fully_preemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.results.fixed_priority.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.task.preemptive.
 Require Export prosa.analysis.facts.preemption.rtc_threshold.preemptive.
diff --git a/results/fixed_priority/rta/limited_preemptive.v b/results/fixed_priority/rta/limited_preemptive.v
index e7ee5be84..e99c04f08 100644
--- a/results/fixed_priority/rta/limited_preemptive.v
+++ b/results/fixed_priority/rta/limited_preemptive.v
@@ -1,5 +1,3 @@
-From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bigop.
-
 Require Export prosa.results.fixed_priority.rta.bounded_nps.
 Require Export prosa.analysis.facts.preemption.rtc_threshold.limited.
 Require Export prosa.analysis.facts.readiness.sequential.
diff --git a/results/gel/generality.v b/results/gel/generality.v
index 4427c84c8..fdee5d13e 100644
--- a/results/gel/generality.v
+++ b/results/gel/generality.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import eqtype ssrnat seq path fintype bigop.
 Require Export prosa.util.int.
 Require Export prosa.model.schedule.priority_driven.
 Require Export prosa.model.priority.gel.
diff --git a/results/gel/rta/bounded_pi.v b/results/gel/rta/bounded_pi.v
index 81366f9e2..55ce7a7d5 100644
--- a/results/gel/rta/bounded_pi.v
+++ b/results/gel/rta/bounded_pi.v
@@ -1,4 +1,3 @@
-From mathcomp Require Import eqtype ssrnat seq path fintype bigop.
 Require Import prosa.util.int.
 Require Import prosa.model.readiness.basic.
 Require Import prosa.analysis.abstract.ideal.cumulative_bounds.
diff --git a/util/all.v b/util/all.v
index ca17d35f7..41809cc80 100644
--- a/util/all.v
+++ b/util/all.v
@@ -1,5 +1,6 @@
+From mathcomp Require Export ssreflect ssrnat ssrbool eqtype fintype bigop.
+
 Require Export mathcomp.zify.zify.
-Require Export prosa.util.tactics.
 Require Export prosa.util.notation.
 Require Export prosa.util.bigcat.
 Require Export prosa.util.div_mod.
@@ -15,3 +16,4 @@ Require Export prosa.util.minmax.
 Require Export prosa.util.supremum.
 Require Export prosa.util.nondecreasing.
 Require Export prosa.util.setoid.
+Require Export prosa.util.tactics.
-- 
GitLab