Focus, Inverse Scope, and Delimited Continuations
理学専攻・情報科学コース

1

はじめにプログラミング言語において、継続とは、現在実行している部分を取り囲むコンテキストのことである。コンテキストを明示的に扱うと、例外や状態などの副作用を表現できることが知られている [3]。一方、自然言語において文の意味を計算する際にも、特定の表現に対するコンテキストを取り出したいことがある [1, 2]。
本研究では、focus と inverse scope に対して限定継続
命令 shift/reset [3] を用いた分析を与え、さらにそれらの相互作用について考察する。

2

Focus

英 語 に お い て 、only や also と いった 副 詞 はfocus-sensitive であるといわれている。たとえば、John only loves [Mary]F と い う 文 の な か で 、Mary は only のフォーカスである。この文の意味は、{e | (e ∈ alt(m)) ∧ (love e j)} = {m}（alt(m) はMary の比較対象の集合）と表されるが [7]、これを得るためには、focus が hole となった動詞句 loves x が必要となる。これは focus に対する継続である。つまり、focus は副詞によって限定された継続を切り取っていると考えることができる。ここで、継続を切り取る命令と限定する命令として、shift/reset を prompt tagで拡張した shift-at/reset-at を用いると、focusと only, also は以下のように表される：
def[ ]F ≡ λp. λx. (shift-at p k (λh. h x k))
def

only ≡ λvp. (reset-at po vp) ho
def

also ≡ λvp. (reset-at pa vp) hadefho ≡ λx. λk. λs. {e | (e ∈ alt(x)) ∧ (k e s)} = {x}defha ≡ λx. λk. λs. {e | (e ∈ alt(x)) ∧ (k e s)} ⊃ {x}(shift-at p k e) は、変数 k を p でタグ付けされたreset-at までの継続に束縛したうえで e を実行する。
po , pa はそれぞれ only, also に対するタグである。タグ付きの shift/reset を用いることで、複数の副詞と focus の選択的な結合 [8] を実現している。

3

Inverse Scope

複数の量化表現を含む文において、後ろに現れるものが広いスコープを取る読みを inverse scope readingとよぶ [6]。たとえば、Someone loves everyone の inverse scope reading は ∀x (∃y (love x y)) という読みである。これを導出するためには、everyone に対する継続、すなわち someone loves x が必要となる。そこ
で、inverse scope reading を導出するためのオペレー
タ INV を次のように定義する（以下、複数の副詞とfocus を含むケースを考えないため、prompt tag なしの shift/reset を用いる）：def[ ]INV ≡ λf. (shift k (f k))
文全体が reset に囲まれていると仮定すると、shiftは量化名詞句 f が hole となった文を継続として切り叢悠悠取る。これを f の nuclear scope として渡すと、f に含まれる量化子が広いスコープを取る読みが得られる。
なお、一つの文、あるいは that 節における INV オペ
レータの適用は高々一回とする。

4

両者の相互作用

Focus と inverse scope に対して、shift/reset を用いた統一的な分析を与えたことにより、両者の相互作用を議論することが可能になる。Someone only introduced [John]F to everyone という文は、一つの focusと二つの量化表現を含むが、この文を「すべての人に対し、John だけを紹介した人が存在する」という inverse scope reading として解釈することは難しい。実際に、focus, only, INV の定義に従ってこの読みを導出しようとすると、型エラーが発生する。これは、shiftの切り取る継続の一番外側が reset で囲まれていることによる。INV の計算は focus が切り取る継続の中で行われるが、この継続に含まれる reset によって、INV が主語 someone までの計算にアクセスできなくなり、好ましくない読みがブロックされるのである。
一方、shift/reset の代わりに control/prompt [4]を使った場合、切り取った継続に prompt が含まれないため、inverse scope reading が導出される。このことから、focus と inverse scope の相互作用においては、shift/reset の出す予測がより英語母語話者の直観に合っているといえる。

5まとめ

本研究では、focus と inverse scope に対して、shift/reset を用いた統一的な分析を与えた。また、両者の相互作用を観察し、focus の inverse scope reading を取りづらくする作用が shift/reset の意味論によって説明されることを示した。なお、focus は wh
節や選言に対してもスコープをブロックする作用を持つことが知られており [5]、今後これらの現象についても shift/reset による分析を与える予定である。

参考文献[1] Barker, C. and Shan, C-c. Continuations and natural language. Oxford University Press, 2014.
[2] Cong, Y., Asai, K., and Bekki, D. Focus, Inverse
Scope, and Delimited Control. In: LENLS12, pp.
137-148, 2015.
[3] Danvy, O. and Filinski, A. Abstracting Control.
In: LFP 90, pp. 151–160, 1990.
[4] Felleisen, M. Theory and practice of first-classprompts. In: POPL 15, pp. 180 – 190, 1988.
[5] Law, J. and Li, H. Generalized focus intervention.
In: SALT 24, pp. 473-493, 2014.
[6] May, R. The Grammar of Quantification. PhD
dissertation, MIT, Cambridge, 1977.
[7] Rooth, M. Association with focus. PhD thesis,
University of Massachusetts, 1985.
[8] Wold, D. Long distance selective binding: Thecase of focus. In: SALT 6, pp. 311-328, 1996.