(*******************************************************************************
 *                                IMITATOR MODEL                               
 * 
 * Title            : infinite-Rplus
 * Description      : Toy benchmark for which there exists an infinite accepting run for p>=0 & q=0
 * Correctness      : 
 * Scalable         : no
 * Generated        : no
 * Categories       : Academic ; Toy ; Unsolvable
 * Source           : Étienne André, Jaime Arias, Laure Petrucci, Jaco van de Pol. "Iterative Bounded Synthesis for Efficient Cycle Detection in Parametric Timed Automata", TACAS 2021. Fig. 7
 * bibkey           : [AAPP21]
 * Author           : Jaco van de Pol
 * Modeling         : Jaco van de Pol
 * Input by         : Dylan Marinho
 * License          : Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
 * 
 * Created          : 2021/01/21
 * Last modified    : 2021/01/21
 * Model version    : 
 * 
 * IMITATOR version : 3
 ******************************************************************************)

var

(* Clocks *)
 	x, y,
		: clock;

(* Parameters *)
	p, q
		: parameter;



(************************************************************)
  automaton pta
(************************************************************)
synclabs: a;

accepting loc l1: invariant x <= q & y <= p
    when x >= q do {x := 0} goto l1;

end (* pta *)



(************************************************************)
(* Initial state *)
(************************************************************)

init :=
	(*------------------------------------------------------------*)
	(* Initial location *)
	(*------------------------------------------------------------*)
	& loc[pta] = l1

	(*------------------------------------------------------------*)
	(* Initial clock constraints *)
	(*------------------------------------------------------------*)
	& x = 0
	& y = 0

	(*------------------------------------------------------------*)
	(* Parameter constraints *)
	(*------------------------------------------------------------*)
	& p >= 0
  & q >= 0
;


(************************************************************)
(* The end *)
(************************************************************)
end
