I am trying to complete some coursework for my maths class on formal specification. I need help with two questions, once they are answered I will be able to see what I need to do in order to continue with the others in the same way
They are the following:

1. Some useful queries for MBS are specified below. Document each one informally,
using natural language; also expand them, to show the types of all arguments:

MBS ?showInfo(b ! i)
b 7! i : NoM & Desc
. . .
MBS ?showBoards(! B)
B := NoM
. . .
MBS ?showMsg(b; n ! m)
b : Board ; n : Index b
m := (Msgs b)(n)

2.

Give a simple formal specification of three events for this class, guided by their
informal documentation below.


a)
A new board b can be opened
with the description d, provided
its name is unique

MBS !OpenBoard (b; d)

b)
A currently-defined board b can
be closed, removing that name
and all of its messages.
MBS !CloseBoard (b)

c)
Some message m can be added
to a defined board b, returning
its next available number n.

MBS !AddMsg(b; m ! n)


I am struggling with it all, I have got to the point I do not know where to start. Any help would be much appreciated.

Thanks,

Gem