2020年9月8日,星期二

神,恶魔和凡人

雷蒙德·斯穆利安(Raymond Smullyan) 模仿一只知更鸟 介绍经典的有趣变化 骑士和刀逻辑难题。说谎的刀和真实的骑士与来自另一个层面的生物结合在一起:说谎的恶魔和真实的神灵。 

最初添加新的撒谎者和讲故事的人会增加困惑的数量,并提供有趣的变化。但是,如果不对谜题格式进行其他更改,则具有两个以上的骗子和说真话的人就可以减少可以生成的谜题的数量,并将可用的谜题减少到本质上两个无趣的谜题。

标准的骑士和刀谜的设置是在一个区域中存在两种居民:总是说实话的骑士和总是撒谎的骑士。据说骑士和小刀处于不同的“立场”。我们想象一个旅行者遇到了一群这样的居民,并试图根据居民做出的某些陈述来弄清他们的类型。

让我们看看引入神灵和恶魔如何改变一系列骑士和刀谜。考虑一下有两个居民(爱丽丝和鲍勃)可能是骑士或小刀的难题。 A和B分别从这10种可能的陈述中作出陈述:(1)我是骗子,(2)我是讲真话的人,(3)他们是讲真话的人,(4)他们是骗子的, (5)我们中至少有一个是真相讲述人,(6)我们中至少有一个是骗子,(7)我们是骗子,(8)我们是诚实的,(9)我们站在同一侧,( 10)我们处于不同的方面。

如果我们考虑分别由A和B进行的这些语句对的组合,则某些对将导致没有解决方案(A或B说“我是骗子”)或许多解决方案(A和B都说)的情况。 “我是个真相”。有些将导致正当的难题,而这恰恰是一种可能的解决方案。我们可以从中生成38个谜题,在下面的图表中,由下面的图表中的蓝色正方形表示,其中删除了不生成谜题的行和列(例如“我是骗子”)。

一些简单陈述中的骑士和刀法难题

当只有骑士和小刀时,其中一些陈述可以告诉我们很多。

(1)一个居民说“我是骗子”。这种说法会引起著名的骗子悖论,不会引起任何困惑,因为骑士和刀匠都不会这样说。

(2)居民说“我是诚实的”。该语句没有告诉我们任何内容,因此只有在另一条语句告诉我们所有内容时才能发生。骑士和小刀都可以这样说。

(3)居民说:“他们是讲真话的人。”这告诉我们居民是同一类型,就像一个刀匠将其说成是一个刀匠,而一个骑士则将其说成是一个骑士。

(4)居民说:“他们是骗子。”这就告诉我们居民是不同类型的,就像一个刀匠说的是骑士,而骑士说刀子的则是骑士。

(5)居民说:“我们当中至少有一个是真相出纳者。”这告诉我们,如果说该语言的居民是个小手,那么其他居民也是如此。

(6)居民说:“我们中至少有一个是骗子。”这告诉我们说话者不能是一个n夫(如果他们是这样的话,那将是真的),所以说话者必须是一个骑士,另一个必须是一个k夫。

(7)居民说:“我们是骗子。”说话者不能是骑士,所以说话者必须是骑士,另一个必须是骑士(以确保陈述不正确)。

(8)居民说“我们是诚实的”。这告诉我们,如果说话的居民是骑士,那么其他居民也是如此。

(9)居民说:“我们站在同一侧。”这告诉我们另一个居民必须是一个骑士(一个骑士会这样说一个骑士,一个骑士也会这样)。

(10)一个居民说:“我们站在不同的一边。”这就告诉我们另一个居民必须是一个刀匠(一个刀匠会这样说,一个刀匠,一个骑士也会这样)。

如果我们在这些谜题中添加神灵和魔鬼,那么将它们写成的陈述的任何组合都不会生成适当的单解谜题。但是,我们可以更改一些语句以提高它们的生产率。 “我是个骗子”可以用它的变体“我是个骗子”代替,实际上它可以由恶魔毫无矛盾地说,或者“我不是一个骑士”,可以用神来形容。概括“我们是诚实的”这样的陈述的一种方法是认为它是“我是一个骑士,他们是一个骑士”,然后考虑其他成对的“和”陈述(例如“我是一个恶魔,他们是一个骑士”)。恶棍”)。类似地,“我们中至少有一个是骗子”与“我是个骗子或他们是个骗子”相同,并且可以扩展到涉及不同类型的其他“或”陈述。使用这些附加语句,我们可以生成204个涉及神,恶魔,骑士和刀的难题,如下图所示。


一些简单陈述中的神,恶魔和凡人难题

如果我们进一步扩展此范围,并且不仅考虑两种说谎者或讲真话者,而且考虑三种呢?我们可以有三种类型的说谎者:knave-0,knave-1和knave-2,以及三种类型的真相讲述者:knight-0,knight-1和knight-2。仍然将每个可能的谜题中的居民数量限制为2,这会大大增加陈述的数量。

但是,当我们这样做时,我们的困惑变得极其无趣。唯一的困惑发生在一个居民发表声明以确保另一个人说实话时,而第二个明确说明了两个居民是什么类型。这些陈述中只有54个难题,总结在下表中。与其他图表一样,完全没有拼图的行和列也已删除。您可以在上面显示的“神魔”图表中找到这些有趣的谜题的较小副本。


3种说谎者和3种讲真话者:这种情况
允许一组非常有限的谜题

引入神灵和魔鬼,以及一些其他陈述,产生了一组有趣的 “两个居民”难题,但除此之外,增加不同类型的说谎者和讲真话的人数,会使难题缩小并且变得更少变化。也许有一种方法可以更改语句或更改拼图的格式,以使更通用的n-knight和n-knave拼图更加丰富?

可以在此处找到一组生成的神,恶魔和凡人拼图: //dmackinnon1.github.io/godsAndDemons/

从谷仓的被子到清真寺的瓷砖

最近在安大略省南部旅行时,我很高兴看到 谷仓被子 沿着高速公路行驶。一些谷仓被子是 拖船图案; 其他(尽管不限于使用)麻将牌基于网格,并且可以在没有指南针的情况下创建。

一种可以制造出
好的谷仓被子

上面的拖链图案是星型图案的一个实例,通常会出现在网格涂鸦中-例如,在Froebelian的礼物和指南中,可以找到此“内星”和相关的“外星”(请参见 该幼儿园 Guide by 玛丽亚·克劳斯(MariaKraus-Boelté)和 John Kraus, 1877).


外星和内星(后 无花果299
该幼儿园 Guide)


通过反转每个凹痕,可以从“内星”获得“外星”。

外在和内在
叠加的

如果扩展外星的所有边缘,则会得到一个新的“大星”,该星将填充10x10的网格。

更大的星星:
外星

将大恒星的每个边缘进一步延伸一个单位并连接边缘,如下所示,我们得到一个12x12的小花图案
大星小花和平铺

使用此模式作为镶嵌的单位,我们得到了在凯鲁万清真寺发现的瓷砖的近似值(请参见 这里也是)。


2019年6月4日星期二

日骑士和夜骑士

在他的书中 模仿一只知更鸟, 雷蒙德·斯穆利安(Raymond Smullyan) 提供了他经典的“骑士与剑法”难题的另一种形式,他想象难题解决者不是去岛屿,而是去探索一个奇异的地下城市。


来自的插图 洞穴之子:
或者,地下怪事 (有时出版 作为
地下城》,朱尔斯·维尔恩(Jules Vern)

在陌生的地下社区,游客无法从黑夜中分辨出白天,而居民却可以。居民有两种类型:白天骑士或夜间骑士。 白天的骑士在白天讲真话,晚上撒谎,而夜晚的骑士在晚上讲真话,白天撒谎。

几个地下难题 模仿一只知更鸟,但我们要 更多的。如果我们考虑地下人员可能做出的足够长的陈述清单, 如果我们有两个居民说话,可能带来的可能性,我们应该能够引起很多困惑。

让我们使用以下22条语句:

0:我是白日骑士,今天是白日
1:另一个人是白日骑士,也就是白日
2:我是白昼骑士,另一个人是白昼骑士
3:我是白日骑士,是黑夜
4:另一个人是白日骑士,这是黑夜
5:我是一个夜骑士,另一个人是白日骑士
6:我是黑夜骑士,今天是白天
7:另一个人是一个黑夜骑士,那是白天
8:我是白日骑士,另一个人是黑夜骑士
9:我是一个黑夜骑士,这是黑夜
10:另一个人是一个黑夜骑士,那是黑夜
11:我是一个夜骑士,另一个人是一个夜骑士
12:今天
13:我是白日骑士
14:不是晚上
15:是晚上
16:我是一个夜骑士
17:不是一天
18:我们当中至少有一个是黑夜骑士
19:我们当中至少有一个是白昼骑士
20:我们都是黑夜骑士
21:我们都是白昼骑士

其中一些是关于一天或其中一个居民类型的简单陈述,其他是将两个简单陈述结合在一起的复合“和”陈述。当复合语句使用“和”来连接两个简单语句时,两个简单语句都必须为true才能使复合语句为true,但是只有一个简单语句需要为false才可以使复合语句为false。

真值表 for A and B

如果第一个居民做出陈述1,第二个居民做出陈述8,我们将得到难题5(如下所示)。您可以尝试解决 这里.


事实证明(这并不奇怪,正如我们将在下面看到的),两个居民都在撒谎,至少在某种程度上。 一定是晚上,两个居民都是白昼骑士。

这是解决它的一种方法:

  • 如果第一人称实话,则有一种可能性:今天是白天,第一人称是白昼骑士,第二人称是白昼骑士。他们可能有3种撒谎的方式。 如果是白天,那么他们将必须是一个夜间骑士,而另一个人也必须是一个夜间骑士。如果是夜晚,那么他们必须是白昼骑士,而另一个人可以是白昼骑士或黑夜骑士。
  • 如果第二人称实话,则有一种可能性:是夜晚,第一人称是夜骑士,第二人称是夜骑士。与第一人称一样,第二人称有3种说谎方式。如果是晚上,则第二人称必须是白昼骑士,而第一人称可以是白昼骑士或黑夜骑士。如果是白天,那么第二个人必须是一个夜间骑士,而第一个人必须是一个白天骑士。
  • 两种可能性中唯一的选择就是夜晚,而两个居民都是白日骑士。
在两个陈述的22 x 22组合中,有多少个因独特的解决方案而引起困惑?事实证明,只有90个谜题出现-下图显示了导致有效谜题的所有组合的白色方块,而没有谜题的组合则为黑色方块。 哪个居民做出特定的陈述并不重要,从而导致图形中的对称性和拼图中的重复项(如果您不在乎陈述顺序)。

22条陈述产生的困惑

我们可以看到,特别是两个陈述导致格式正确的拼图几乎完整的水平和垂直线。这些行是涉及语句3和6的难题:

3:我是白日骑士,是黑夜
6:我是黑夜骑士,今天是白天
这些声明中的每一个都大大缩小了可能解决方案的范围。例如,如果一个岛民说“我是白昼骑士,那是黑夜”,那么他们一定是在撒谎。而且,我们知道他们不可能是白天的白昼骑士或晚上的黑夜骑士。这留下了一种可能性:今天是白天,而他们是黑夜骑士。

正如陈述的对称性所预期的那样,在有效的谜题中,白天和黑夜的可能性是相同的,居民是白天或夜晚的骑士的可能性也是如此。

白天和黑夜同样有可能

但是在地下世界中,并非所有事物都是平衡的。在上面的示例中(拼图5),在陈述3和6生成的拼图中,我们发现Subterranea的居民不如真实。实际上,在 全部 产生的谜题中,至少有一个居民在撒谎-切勿同时讲出真相。下图显示了一个谜题,其中一个居民躺在浅蓝色中,而两个居民躺在白色中。

地下:不太适合游客

也许是因为他们偏爱AND连词,导致地下人难以说出真相?

地下世界可能会让您想起 梦之岛 -地下拼图与梦之岛拼图之间的主要区别在于 这一页 是岛民没有使用AND链接他们的陈述-每个陈述都是不同的。

地下和地下 梦之岛 是也包括标准的拼图类别的示例 骑士和小刀, 这 狮子与独角兽, 这 守卫不可靠, 老虎或宝藏波蒂亚的棺材,还有许多其他。这些难题中的一堆被收集 这里.


2019年5月9日星期四

明星多边形乐趣

星型多边形和复合多边形是非常漂亮的数学对象,可以在代码中轻松绘制或创建。
星形和复合多边形
在2至9个顶点上

在探索乘法表时,您可能会绘制十个尖的多边形, 例如。在下图中,在连续数字的最后几位数字之间划一条线时,跳过6计数就得到了一个五边形:计算0、6、12、18、24、30,我们画出了连接0、6、2、8、4的线和0。

跳过6抽签{5/2}

手工绘制星形和复合多边形时,您将从 n 围绕圆形均匀分布的点,然后从每个点连接到另一个点,始终跳过相同数量的点。如果您跳过0分,就会得到常规 n-gon。如果您跳过 k 点,以及 k +1是相对素数 n,您将获得一个星形多边形,如果 nk+1个共享因子,您将得到几个规则或星形多边形的复合。

9分,跳过0、1、2和3
顶点

有趣的是,这样一种易于描述的算法(跳过圆上的点)转换为程序。

上的多边形 这一页 使用一些JavaScript(代码 这里),其中包括使用Trig函数放置初始顶点(例如围绕单位圆的点)和模块化算法以帮助以循环方式遍历点列表。这是一个很好的例子,说明数学是如何进入我们实现甚至简单算法的方式的。

当我们全面介绍一种数学方式来表达如何使用绘制这些图形时 德斯莫斯,我们可以看到在这种情况下数学如何以令人惊讶的紧凑方式表达算法。您可以查看图表 这里.

{7/2}的desmos草绘,
图形 这里


相关链接和帖子
星型多边形页面
在desmos中的星形多边形
乘法表中的多边形

2019年5月8日星期三

德斯莫斯·克拉德尼(Desmos Chladni)

喜欢 利萨如(Lissajous)人物, 克拉德尼人物 提供了一个令人惊讶且在美学上引人入胜的波浪相互作用的例子。

这些数字以恩斯特·克拉德尼(Ernst Chladni)的名字命名,代表了由振动表面形成的节点图案。传统上,它们是通过将细颗粒放置在表面上而形成的,就像设置振动的金属片一样(一种流行的方法是将小提琴弓紧靠金属板的边缘)。粒子沉降在运动最少的区域-节点中。当您达到共振频率时,就会出现特征图案。

在过去的文章中,我已经指出了使用R绘制Chladni数字的代码(这里这里),并使用 的JavaScript。也许并不奇怪,您还可以使用 德斯莫斯,这可能是探索它们并了解它们是如何由正弦函数生成的最便捷的方法。

R中生成类似Chladni的身材

使用JavaScript生成的类似Chladni的身材


在Desmos中,您可以使用不等式创建与这些图像相似的图像。方程相当简单明了-图形 这里 会在整个平面上绘制图形-在较小的区域放大时可以看到最佳效果。

德斯莫斯中产生了类似Chladni的身影,
图形 这里


德斯莫斯中更多类似Chladni的人物

尝试玩desmos图 这里,找到用于生成图形的R脚本 这里,JavaScript Chladni生成页面是 这里.

更新
在Twitter上发布后,通过以下方式改进了desmos草图:   and @保拉·克里格(PaulaKrieg)。以下是一些其他图表,这些图表受到其变化的启发:

像Chladni一样的图案
两个明显的不平等

类似于Chladni的图案,具有三个不同的
不平等

随着图层的增加,Chladni模式越来越接近抽象 威廉·莫里斯 appearance.

另一个更新
其他图 与上面提到的网页类似,您可以更直接地使用Chladni数字进行实验。

图形 for building 
克拉德尼人物