Model 电子邮件服务器FSP模型

Model 电子邮件服务器FSP模型,model,client,state,Model,Client,State,对于我的任务,我需要为电子邮件服务器和客户端开发FSP模型。我设法编写了一个简单的模型来描述一个用户、服务器和他的邮箱,但是我在将这个系统更改为一个有两个用户和两个独立邮箱的系统时遇到了问题。 我开发的FSP模型: USER = (read->USER | write->USER). SERVER = (read->get->SERVER | write->put->SERVER). MAILBOX(N=0) = MAILBOX[N], MAILBOX[i:0

对于我的任务,我需要为电子邮件服务器和客户端开发FSP模型。我设法编写了一个简单的模型来描述一个用户、服务器和他的邮箱,但是我在将这个系统更改为一个有两个用户和两个独立邮箱的系统时遇到了问题。

我开发的FSP模型:

USER = (read->USER | write->USER).
SERVER = (read->get->SERVER | write->put->SERVER).
MAILBOX(N=0) = MAILBOX[N],
MAILBOX[i:0..3] = (when (i<3) write->put->MAILBOX[i+1]
 | when (i>0) read->get->MAILBOX[i-1]).
||EMAIL = (USER || SERVER || MAILBOX).
USER=(读->用户|写->用户)。
服务器=(读取->获取->服务器|写入->放置->服务器)。
邮箱(N=0)=邮箱[N],
邮箱[i:0..3]=(当(iput->邮箱[i+1]
|当(i>0)读取->获取->邮箱[i-1]时。
||电子邮件=(用户| |服务器| |邮箱)。

如果您尝试以下方法,会怎么样:

USERX = (read->USERX | write->USERX).
USERY = (read->USERY | write->USERY).


MAILBOX(N=3) = X[N],
X[i:0..N] = (when (i<3) write->put->X[i+1] 
| when (i>0) read->get->X[i-1]).

MAILBOX1(N=3) = Y[N],
Y[j:0..N] = (when (j<3) write->put->Y[j+1] 
| when (j>0) read->get->Y[j-1]).



SERVER = (read->get->SERVER | write->put->SERVER).

||EMAIL = (USERX || USERY || SERVER || MAILBOX ||  MAILBOX1).
USERX=(读->USERX |写->USERX)。
用户Y=(读->用户Y |写->用户Y)。
邮箱(N=3)=X[N],
X[i:0..N]=(当(iput->X[i+1]
|当(i>0)读取->获取->X[i-1])。
邮箱1(N=3)=Y[N],
Y[j:0..N]=(当(jput->Y[j+1]
|当(j>0)读取->获取->Y[j-1])。
服务器=(读取->获取->服务器|写入->放置->服务器)。
||电子邮件=(USERX | | USERY | | |服务器| |邮箱| |邮箱1)。