Let
be the set of all possible items you want in your queue. Boolean is a place holder for boolean values.
This is the schema for Queue. All that Queue contains is a set of partial functione mapping the natural numbers to the items in the queue.
The predicate gurantees that the doman of "items" is the emptyset or {1..n} where n is an integer greater then or equal to 1.
The initialize for a Queue, make sure it is empty to begin with.
Return "True" if the priority queue is empty and "False" otherwise.
The join operation is the similar to what enqueue typically does.
The Leave operation is the same as dequeue, it simply returns the value with index 1 and shifts everything down.