2012年1月26日

《木偶之歌》

以前对西方的歌剧不怎么感冒,每次听豆瓣的古典频道,碰到歌剧就跳过去。今天在国家大剧院官网的古典音乐频道,听了2012年北京新年音乐会,其中一首《木偶之歌》让我改变了对歌剧的看法,发现歌剧唱法的技巧性相当强,这种技巧性带来了其艺术观赏性。看过这首歌剧的演唱和表演后,就会发现,龚琳娜的《忐忑》其实融合了西方歌剧的一些唱法和技巧。我听中国戏曲不多,不知在中国戏曲中,像《木偶之歌》那样,在各种音高上快速切换跳跃是否普遍。印象中这样的唱法在中国戏曲中很少见,这大概也是《忐忑》能成为神曲的原因。《木偶之歌》观赏性强的另一个原因是其诙谐性,演唱者是在模仿一个木偶在表演,唱到中间还断气了,要指挥家重新“拧发条”才能继续开唱,这大概是为数不多的能引得观众在演奏现场发笑的古典音乐。

顺便赞一下古典音乐频道,可以免费观看国家大剧院的古典音乐现场演奏,效果还不错,就是内容还少了点。

2012年1月12日

研究途径多样性的价值

如果一个问题已经有一种解决方法了,提供一种新的解决方法有什么意义呢?很多时候,这种新的解决方法比原来的方法还更困难,而且也不能用来解决新的问题,那么这种新的方法到底有没有价值呢?下面的示意图或许能说明一点问题。



方法2和方法1都能解决原问题,都不能直接解决新问题,且方法2比方法1更难(对应的线段更陡),但沿着方法2的思路前进解决新问题,却比沿着方法1的思路前进解决新问题更容易(对应的线段更平缓),这就是方法2的价值所在。

2011年11月21日

皮影戏

今天在中大看了两场皮影戏,是第十一届广东省艺术节的演出之一。在广州待了也有六七年了,竟是头一回听说这个节。不知道其他省有没有这样的节。

广东素有文化沙漠之称。不过看完皮影戏,发现广东民间文化保留得还是不错的。之前早就看到了皮影戏要在中大演出的预告,但一直找不到卖票的地方。今天才发现原来是免票入场的。可能是因为之前免票宣传没有做到位,观众出奇的少,连礼堂的四分之一都没坐满。

不管怎样,能免费看到这样的演出还是很高兴的。以前一直以为皮影以动画表演为主,声音其次。这次才发现配音、配乐也都很齐全,而且看(听)得出,不仅配音演员格外卖力,表演者在声音和动画的配合上也下足了功夫。

放最后一个节目时,我忍不住好奇,跑到后台去看了看。还真是个技术活。好几个表演者来回穿梭,一只公鸡就得两个人同时控制,很不容易。表演者以女的居多,都很年轻。

最令人感慨的是这些表演者完全不在意露脸,表演结束后匆匆谢幕。本来想从后台赶到前台给他们拍个照,结果还没等我跑过去,他们已经又退回幕后了。

最后说一句,中大的观众太不给力了,掌声稀里哗啦,完全没有热情,我一个人孤掌难鸣,巴掌拍红了也没什么效果。我想,如果他们看到了表演者后台是如何辛苦,大概会多给一些掌声吧。

不多说了,上图吧。











2011年3月29日

RCEA 规则的反例?

在条件句逻辑中有如下的推理规则:

(RCEA) $latex \dfrac{A\leftrightarrow B}{(A>C)\leftrightarrow (B>C)}$

即,条件句的前件可以进行等价置换而保持条件句真值不变。这是等价置换规则在条件句逻辑中的具体化。一般的,两个逻辑等价的公式可以保真地在任何语境下相互替换。在命题态度语境中,这个规则通常是不成立的。例如一个主体可以相信 2 + 2 = 4 而不一定相信费马大定理。但通常的模态逻辑都具有等价置换规则,条件句逻辑一般也假定该规则成立。不过,稍微改造一下“二难推理的反例”中提到的那个电路图,似乎可给出 (RCEA) 的反例。考虑如下电路图:


命题 A, B, C, D 的含义如下:


A: switch A,B: switch B,C: switch C,D: D 亮


分别考虑如下两个命题:


(1) $latex (A\land B)\lor (A\land C) > D$


(2) $latex A\land (B\lor C) > D$


直观上 (1) 真而 (2) 假,即 (1) $latex \not\leftrightarrow$ (2),但 (1) 和 (2) 的前件是逻辑等价的,从而 (RCEA) 不成立。


不过,这里有个问题,为什么当我们在考虑 (1) 中前件的每个析取枝时,会假定另一个析取枝的情况保持不变,而在考虑 (2) 中前件中第二个合取枝中的的每个析取枝时却不会假定另一个析取枝的情况保持不变?换言之,(1) 直观上的确是真的吗?或许你们有不同的直观。如果是这样,那么这个例子不足以构成 (RCEA) 的反例。Nute 在其 Conditionals 一书中给出了另一个 (RCEA) 的反例。考虑如下电路图:



命题 ABCD 的含义如下:


A: switch A,B: switch B,C: switch C,D: D 亮


考虑如下两个命题:


(3) $latex A\lor (B\land C) > \neg D$


(4) $latex (A\lor B)\land (A\lor C) > \neg D$


直观上 (3) 真而 (4) 假。但 (3) 和 (4) 的前件是逻辑等价的。这个例子用来反驳 (RCEA) 是不是比我的例子更有说服力呢?

LaTeX 作图工具介绍

LaTeX 虽然在公式编辑上远胜任于 Office,但对于作图,初学者可能会觉得门槛较高而对 LaTeX 产生畏难情绪。不过,如果掌握了恰当的工具,LaTeX 下的作图仍然很方便且优于 Office。

  • 利用命令绘图


利用命令可以精准控制图形的形状和位置,对于结构性较强的图形,利用命令画图比手工绘图更值得推荐。LaTeX 本身有一些命令可以绘制简单的图形,但绘制复杂图形则需要使用一些宏包,其中常用的宏包有:

  1. tikz,非常强大的作图宏包,几乎可以画任何图形。甚至可以绘制简单的函数图像。其官方使用手册的最新版厚达726页。网上也有非常多的实例展示如何用 tikz 命令绘制各种图形,例如这个网页。

  2. pstricks,老牌的作图宏包,异常强大。遗憾的是不支持 pdflatex 编译,不过支持xelatex(或许反过来说更对,xelatex支持pstricks)。

  3. metapost,这是在 LaTeX 诞生之初就有的绘图工具,但因为不是 LaTeX 的宏包,而只是一个外部命令行工具,使用起来不够方便。不能直接在 LaTeX 中用代码画图,而必须用 metapost 命令画好图生成 eps 或 pdf 格式的文件供 LaTeX 调用。不过, metapost 的绘图能力独步天下,大概只有 pstricks 可以与之匹敌。

  4. gnuplot,外部命令行工具,绘制函数图像的不二选择。提供和 LaTeX 的接口。这里是一个很好的简明入门教程。

  5. xy-pic(其实宏包名为xy),如果是画交换图,特别是范畴论中的图形,使用 xy 宏包会极为方便。但画结构性不那么好的图形则比较麻烦。

  6. bussproof,写 Gentzen 式树状逻辑推演极为方便。

  7. qtree,画 tableau 证明树或语法分析树极为方便,但树枝没有箭头。

  8. xy-ling,另一个画树状图的宏包,极其灵活,处理语言学中各种语法分析树不在话下。


其中前 3 种熟练掌握一种就完全够用了,后 5 种则是面向特殊用途的。

  • 利用 GUI 绘图软件绘图


毕竟有些复杂的图用命令绘制仍然不方便(特别是结构性不那么好的图),这时需要使用外部绘图软件先手工绘制出图形,然后在 LaTeX 文档中调用由这些软件生成的图片或 tex 代码。理论上,任何绘图软件都可以生成可供 LaTeX 调用的图片,但考虑到有些图形上需要添加公式,这时普通的绘图软件就不够用了。我所了解的支持添加 LaTeX 公式的绘图软件有如下这些:

  1. Inkscape,非常强大的矢量绘图软件,可实现很多复杂的效果,跨平台,且支持多种文件格式保存。Ubuntu 可通过源安装。没有特别声明支持 LaTeX,但实际上所绘图片可以直接存成 tex 格式(其代码利用了 pstricks 宏包),也可以存成 pdf 文件,然后在保存选项中选择包含 LaTeX 代码(用于处理图片中的公式),Inkscape 会生成一个名为<image>.pdf_tex的文件,最后在 LaTeX 主文档中使用 input 命令包含这个文件即可。详见这个文档说明。如果不需要绘制函数图形,Inkscape 是这里所列的绘图软件中绘图能力最强的。

  2. Ipe,比 Inkscape 小巧,因而绘图功能也较弱,但如果只需要绘制简单图形,也够用了。不能导出为 tex 代码,直接生成 eps 或 pdf 格式图片供 LaTeX 文档调用,能自动剪裁图片大小,去掉白边。跨平台。Ubuntu 可通过源安装。Linux 下必须通过命令行启动。

  3. LaTeXDraw,与 Ipe 类似。好处是在手工绘图的同时自动生成 tex 代码(利用了 pstricks 宏包)。跨平台。Ubuntu 可通过源安装。

  4. XFig, 比较老牌的支持 LaTeX 的 GUI 绘图软件。手工绘图后生成 .pstex(存储图片信息)和 .pstex_t(存储图片中的公式信息)文件供 tex 主文档调用。跨平台。Ubuntu 可通过源安装。虽然不是专业的图片编辑软件,但与 Inkscapte 相比,XFig 处理简单的数学图形可能更方便。缺点是:界面丑陋,而且不支持 pdflatex 编译,要先用 latex 编译,然后转成 pdf。

  5. TpX,是我接触最早的支持 LaTeX 的 GUI 绘图软件,据说是一个经济学家因为要出书,图片太多,不方便处理,所以自己动手写了这个软件。与 Ipe 类似。小巧,方便。缺点是只支持 Windows。

  6. GeoGebra,专门绘制函数图像,支持导出为 tikz 或 pstricks 代码,跨平台。Ubuntu 可通过源安装。

  7. Dia,专门绘制流程图,支持导出为 tikz 或 pstricks 代码,跨平台。Ubuntu 可通过源安装。

  8. Tikzedt,专门生成 tikz 代码的所见即所得绘图工具。Windows版本已较完善,最近刚刚放出Linux版。与其他自动生成代码的绘图工具相比,Tikzedt生成的代码较为干净。


欢迎大家补充。(更新于2012-06-10)

二难推理的反例

与黄繁讨论,他给出了一个用两个开关控制一盏灯的电路图,这种电路经常用于楼梯设计,可以实现如下效果:上楼时按开关 A,灯亮,上完楼按开关 B,灯灭。第二个人再上楼按开关 A,灯亮,上完楼按开关 B,灯灭。下楼也一样。受经典电路图局限,我认为如果只用两个开关,或每个开关只有两个状态,那么不可能实现这个效果。结果他给出了如下的电路图。受这个电路图启发,我认为可以给出经典逻辑中一个常用的有效推理的反例。

在经典逻辑中,如下推理是有效的:

(1) $ (A\rightarrow C)\land (B\rightarrow C)\vdash (A\lor B)\rightarrow C$

这种推理又叫做二难推理,即当要证明某个析取式蕴涵某个结论时,只需要分别证明两个析取枝蕴涵该结论。在条件句逻辑中,一般以 (CA) 命名上述推理所对应的公理:

(CA) $ (A>C)\land (B>C)\rightarrow (A\lor B)>C$

(CA) 也为通常的条件句逻辑所接受。但可以举出如下反例:



在这个反例中,(1) 中的 A, B, C 分别代表:switch 开关 A,switch 开关 B 和 C 亮。直观上,(1) 前提真而结论假。前提真容易理解,结论假的原因是,“switch A 或 switch B”也包括同时 switch A 和 B,而此时灯不会亮。

利用电路图来给出经典逻辑推理的反例,是一种非常直观而有效的方法。例如,利用标准的包含两个开关的串联电路就可以给出如下推理的反例(参见 Priest 的 Introduction to Non-classical Logic):

(2) $ (A\land B)\rightarrow C\vdash (A\rightarrow C)\lor (B\rightarrow C)$

是不是可以构造一种非经典逻辑,使得该逻辑能够刻画所有基于电路图的推理呢?或者电路图是不是可以当作非经典逻辑的试金石?类似于计算复杂性问题中的 benchmark。

与沈榆平讨论时,他指出,上述反例包含了人工智能领域三个基本难题:框架(frame)问题、衍生(ramification)问题和并发(concurrency)问题。如果真是这样,那么这个反例还是有点搞头的。

2011年3月13日

哲学上使用与提及之区分的绝妙例子

语言哲学有使用与提及的区分,这可以用一个绝妙的例子来解释:敏感词是敏感词。其中前一个敏感词是提及后一个是使用。而且可以用这个天朝发明的伟大的词造出任意有穷长的句子:敏感词含敏感词含敏感词……