import Ġorg . jetbrains . kotlin x . lin check .* Ċ import Ġorg . jetbrains . kotlin x . lin check . Logging Level .* Ċ import Ġorg . jetbrains . kotlin x . lin check . annotations . Operation Ċ import Ġorg . jetbrains . kotlin x . lin check . strategy . managed . model checking .* Ċ import Ġorg . jetbrains . kotlin x . lin check . strategy . stress .* Ċ import Ġorg . jetbrains . kotlin x . lin check . verifier .* Ċ import Ġorg . junit .* Ċ import Ġjava . util .* Ċ import Ġkotlin . collections . ArrayList Ċ Ċ class ĠBlock ing Stack Test Ġ{ ĊĠĠĠ Ġprivate Ġval Ġq Ġ= ĠF CP ri ority Queue < Int >() ĊĊĠĠĠ Ġ@ Operation ĊĠĠĠ Ġfun Ġpoll (): ĠInt ? Ġ= Ġq . poll () ĊĊĠĠĠ Ġ@ Operation ĊĠĠĠ Ġfun Ġpeek (): ĠInt ? Ġ= Ġq . peek () ĊĊĠĠĠ Ġ@ Operation ĊĠĠĠ Ġfun Ġadd ( element : ĠInt ): ĠUnit Ġ= Ġq . add ( element ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmodel Checking Test () Ġ= ĠModel Checking Options () ĊĠĠĠĠĠĠĠ Ġ. iterations ( 1 0 0 ) ĊĠĠĠĠĠĠĠ Ġ. inv ocations Per Iteration ( 1 0 _ 0 0 0 ) ĊĠĠĠĠĠĠĠ Ġ. threads ( 3 ) ĊĠĠĠĠĠĠĠ Ġ. actors Per Thread ( 3 ) ĊĠĠĠĠĠĠĠ Ġ. sequential Specification ( Priority Queue Sequential :: class . java ) ĊĠĠĠĠĠĠĠ Ġ. logLevel ( INFO ) ĊĠĠĠĠĠĠĠ Ġ. check ( this :: class . java ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġstress Test () Ġ= ĠSt ress Options () ĊĠĠĠĠĠĠĠ Ġ. iterations ( 1 0 0 ) ĊĠĠĠĠĠĠĠ Ġ. inv ocations Per Iteration ( 1 0 _ 0 0 0 ) ĊĠĠĠĠĠĠĠ Ġ. actors Before ( 2 ) ĊĠĠĠĠĠĠĠ Ġ. actors After ( 2 ) ĊĠĠĠĠĠĠĠ Ġ. threads ( 2 ) ĊĠĠĠĠĠĠĠ Ġ. actors Per Thread ( 3 ) ĊĠĠĠĠĠĠĠ Ġ. sequential Specification ( Priority Queue Sequential :: class . java ) ĊĠĠĠĠĠĠĠ Ġ. logLevel ( INFO ) ĊĠĠĠĠĠĠĠ Ġ. check ( this :: class . java ) Ċ } Ċ Ċ class ĠPriority Queue Sequential Ġ: ĠVer ifier State () Ġ{ ĊĠĠĠ Ġprivate Ġval Ġq Ġ= ĠPriority Queue < Int >() ĊĊĠĠĠ Ġfun Ġpoll (): ĠInt ? Ġ= Ġq . poll () ĊĠĠĠ Ġfun Ġpeek (): ĠInt ? Ġ= Ġq . peek () ĊĠĠĠ Ġfun Ġadd ( element : ĠInt ) Ġ{ Ġq . add ( element ) Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġextract State () Ġ= ĠArrayList ( q ) Ċ } Ċ