理解操作语义


无思
2025-04-12 04:14:14 (3小时前)


我有这个推导

(b, ) false(skip, )

(?若B则C;?w ^否则跳过?)

(顶行是前提条件,底线是表达式)

表达是否意味着:

如果b为True,则t

3 条回复
  1. 0# 撩心 | 2019-08-31 10-32



    每个操作语义都不同,问题没有指定上下文,所以我只能猜测答案。



    我会解析

    if b then c; w else skip



    if b then {c; w} else skip

    ,也就是问题的第二种解释。推导似乎是关于这种情况

    b

    是假的,所以

    c

    没有提到因为如果

    b

    是假的,

    c

    没有执行。代替,

    skip

    被提及是因为它被执行了。


  2. 1# 圈圈红 | 2019-08-31 10-32



    这只是回答你问题的一部分,但是:

    c

    不包括在前置条件中,因为它不依赖于前提条件。我莫名其妙地无法理解

    w

    在第二行也是。此外,这个问题可能是偏离主题的,因为它更多地是关于计算机科学而不是实际编程。


登录 后才能参与评论