逻辑状态可能只持续很短时间,而观察器每隔几拍才检查一次。如果状态开始和结束都落在相邻检查之间,观察记录就可能完全看不到它。
本篇用一组独立输入把规则展开为可重复核对的记录。先确认单位、编号及边界,再自行尝试推演,然后寻找与下面过程第一次不同的位置。所有结果只在这里写明的规则下成立,不能当作所有游戏的统一实现。
规则与输入
观察时刻按固定间隔和初始相位产生,范围为零到五十拍。每个独立状态区间左端包含、右端排除;只统计落在区间内的采样,存在采样时记第一次发现相对开始的延迟,否则标记未发现。
间隔7、相位3,检查时刻[3, 10, 17, 24, 31, 38, 45] [[27, 33], [16, 25], [18, 26], [4, 6], [19, 22], [35, 37], [14, 21], [39, 49], [13, 23], [8, 9], [43, 51]]
逐步推演
状态[27,33)持续6拍,落入其中的检查时刻[31],首次发现延迟4拍。结束时刻本身不属于有效区间。
状态[16,25)持续9拍,落入其中的检查时刻[17, 24],首次发现延迟1拍。结束时刻本身不属于有效区间。
状态[18,26)持续8拍,落入其中的检查时刻[24],首次发现延迟6拍。结束时刻本身不属于有效区间。
状态[4,6)持续2拍,落入其中的检查时刻[],没有被发现。结束时刻本身不属于有效区间。
状态[19,22)持续3拍,落入其中的检查时刻[],没有被发现。结束时刻本身不属于有效区间。
状态[35,37)持续2拍,落入其中的检查时刻[],没有被发现。结束时刻本身不属于有效区间。
状态[14,21)持续7拍,落入其中的检查时刻[17],首次发现延迟3拍。结束时刻本身不属于有效区间。
状态[39,49)持续10拍,落入其中的检查时刻[45],首次发现延迟6拍。结束时刻本身不属于有效区间。
状态[13,23)持续10拍,落入其中的检查时刻[17],首次发现延迟4拍。结束时刻本身不属于有效区间。
状态[8,9)持续1拍,落入其中的检查时刻[],没有被发现。结束时刻本身不属于有效区间。
状态[43,51)持续8拍,落入其中的检查时刻[45],首次发现延迟2拍。结束时刻本身不属于有效区间。
十一段独立状态中4段没有遇到检查点。
怎样独立检查
从每个区间起点向后寻找第一个满足采样间隔与相位的整数时刻,再检查它是否仍早于区间终点。与逐个采样筛选的结果比较,特别留意刚好落在结束时刻的检查。
观察器未发现状态,不等于状态从未发生。提高检查频率或直接记录事件可以解决不同问题,本例只说明定期采样的时间盲区。不能从缺失的样本凭空还原真实开始和结束时刻。
练习时先保存原始输入及中间结果,再只改变一个条件观察差异。重点检查空状态、相同数值、恰好到达边界和最后一步。不要为了凑出相同的最终结果而忽略较早出现的偏差,过程和结论都应能由同一套规则解释。
