SlideShare a Scribd company logo
1 of 145
Download to read offline
何か集合論かロジック
について
数学専攻博士前期課程一年

石井 大海
何か集合論かロジック
について
数学専攻博士前期課程一年

石井 大海
準備出来ませんでした……🙇💦
そこで……
本をつくる
数学専攻博士前期課程一年

石井 大海
本をつくる
数学専攻博士前期課程一年

石井 大海
(数式が入った)
Q. 数式が入った本を
つくるには?
👏
を使えばよい■
👏
御清聴ありがとうございました!
を使えばよい■
……本当に?
本とは?
‒三省堂 新明解国語辞典 第六版[小型版]
㊀人に読んでもらいたいことを書い(印刷し)
てまとめた物。書物。 ㊁書籍・図書の汎称
本とは
本とは
紙に印刷されたやつ
本とは
紙に印刷されたやつ
大体の印刷所は PDF 形式で入稿出来る
本とは
紙に印刷されたやつ
大体の印刷所は PDF 形式で入稿出来る
   を使えば PDF は簡単に生成出来る
本とは
紙に印刷されたやつ
大体の印刷所は PDF 形式で入稿出来る
   を使えば PDF は簡単に生成出来る
行送りや禁則などの処理もしてくれる
本とは
紙に印刷されたやつ
大体の印刷所は PDF 形式で入稿出来る
   を使えば PDF は簡単に生成出来る
行送りや禁則などの処理もしてくれる
? で十分では?
本とは
紙に印刷されたやつ
大体の印刷所は PDF 形式で入稿出来る
   を使えば PDF は簡単に生成出来る
行送りや禁則などの処理もしてくれる
? で十分では?
! NO!
21世紀の 本
21世紀の 本
電子書籍
21世紀の 本
電子書籍
紙に印刷されてない!
21世紀の 本
電子書籍
紙に印刷されてない!
形式:PDF, EPUB, .mobi (Kindle), .ibooks
(Apple),...
21世紀の 本
電子書籍
紙に印刷されてない!
形式:PDF, EPUB, .mobi (Kindle), .ibooks
(Apple),...
PDF で十分なら でやればよい。
21世紀の 本
電子書籍
紙に印刷されてない!
形式:PDF, EPUB, .mobi (Kindle), .ibooks
(Apple),...
PDF で十分なら でやればよい。
!
専用端末による快適な閲覧には

EPUB など特化形式による組版が不可欠!
なぜ?
PDFには限界がある
PDF の限界
PDF の限界
寸法・文字サイズが固定
PDF の限界
寸法・文字サイズが固定
専用端末の小さな画面で快適に見るにはユーザ側
の工夫が必要(トリミング 等)
PDF の限界
寸法・文字サイズが固定
専用端末の小さな画面で快適に見るにはユーザ側
の工夫が必要(トリミング 等)
ページ送り方向の変更が端末によって未対応
PDF の限界
寸法・文字サイズが固定
専用端末の小さな画面で快適に見るにはユーザ側
の工夫が必要(トリミング 等)
ページ送り方向の変更が端末によって未対応
横書きは左→右、縦書きは右→左
PDF の限界
寸法・文字サイズが固定
専用端末の小さな画面で快適に見るにはユーザ側
の工夫が必要(トリミング 等)
ページ送り方向の変更が端末によって未対応
横書きは左→右、縦書きは右→左
数式+縦書きで組みたい場合(例:私)は不便!
PDF の限界
寸法・文字サイズが固定
専用端末の小さな画面で快適に見るにはユーザ側
の工夫が必要(トリミング 等)
ページ送り方向の変更が端末によって未対応
横書きは左→右、縦書きは右→左
数式+縦書きで組みたい場合(例:私)は不便!
電子書籍ストアによってはPDFは受け付けない
そこで
電子書籍フォーマットEPUB
電子書籍フォーマットEPUB
EPUB: 電子書籍の標準規格
電子書籍フォーマットEPUB
EPUB: 電子書籍の標準規格
最近縦組みやルビ、圏点などにも対応
電子書籍フォーマットEPUB
EPUB: 電子書籍の標準規格
最近縦組みやルビ、圏点などにも対応
禁則処理や行 えの機能はまだまだ弱い
電子書籍フォーマットEPUB
EPUB: 電子書籍の標準規格
最近縦組みやルビ、圏点などにも対応
禁則処理や行 えの機能はまだまだ弱い
Kindle の .mobi や Apple の .ibooks は
EPUB に独自機能や DRM を追加したもの
電子書籍フォーマットEPUB
EPUB: 電子書籍の標準規格
最近縦組みやルビ、圏点などにも対応
禁則処理や行 えの機能はまだまだ弱い
Kindle の .mobi や Apple の .ibooks は
EPUB に独自機能や DRM を追加したもの
➡ EPUB さえ出力出来ればなんとかなる!
Table of Contents
EPUBの仕組みと数式
EPUB の仕組み
EPUB と数式
数学者がEPUBを書く方法
Pandoc によるワークフロー
Table of Contents
EPUBの仕組みと数式
EPUB の仕組み
EPUB と数式
数学者がEPUBを書く方法
Pandoc によるワークフロー
EPUBの仕組みと数式
EPUBの仕組み
EPUBの仕組み
HTML5, CSS, 画像を zip で圧縮したもの
EPUBの仕組み
HTML5, CSS, 画像を zip で圧縮したもの
実質的にウェブサイトを圧縮してまとめた物
EPUBの仕組み
HTML5, CSS, 画像を zip で圧縮したもの
実質的にウェブサイトを圧縮してまとめた物
厳密には HTML や CSS のサブセットに電子出版用の
機能追加をしたもの
EPUBの仕組み
HTML5, CSS, 画像を zip で圧縮したもの
実質的にウェブサイトを圧縮してまとめた物
厳密には HTML や CSS のサブセットに電子出版用の
機能追加をしたもの
編集方法:InDesign, Sigil など
EPUBの仕組み
HTML5, CSS, 画像を zip で圧縮したもの
実質的にウェブサイトを圧縮してまとめた物
厳密には HTML や CSS のサブセットに電子出版用の
機能追加をしたもの
編集方法:InDesign, Sigil など
Zip の中身が覗けるなら原理的にはどんなエディタでも
使える(Emacs とか)
EPUBと数式
EPUBと数式
EPUBで数式を表示する二つの方法
EPUBと数式
EPUBで数式を表示する二つの方法
1. MathML:数式をXMLで表現する規格
EPUBと数式
EPUBで数式を表示する二つの方法
1. MathML:数式をXMLで表現する規格
2. 画像:   で組んだ数式を画像化・埋め込み
EPUBと数式
EPUBで数式を表示する二つの方法
1. MathML:数式をXMLで表現する規格
2. 画像:   で組んだ数式を画像化・埋め込み
? それぞれの利点・欠点は?
MathML
MathML
数式を XML で表現 <math display="block" xmlns="...">
<semantics>
<mrow>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo>−</mo><mi>x</mi>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>−</mo>
<mi>b</mi>
</mrow>
</semantics>
</math>
MathML
数式を XML で表現
標準規格
<math display="block" xmlns="...">
<semantics>
<mrow>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo>−</mo><mi>x</mi>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>−</mo>
<mi>b</mi>
</mrow>
</semantics>
</math>
MathML
数式を XML で表現
標準規格
機械的処理がしやすい
<math display="block" xmlns="...">
<semantics>
<mrow>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo>−</mo><mi>x</mi>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>−</mo>
<mi>b</mi>
</mrow>
</semantics>
</math>
MathML
数式を XML で表現
標準規格
機械的処理がしやすい
😟手で書くのが大変
<math display="block" xmlns="...">
<semantics>
<mrow>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo>−</mo><mi>x</mi>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>−</mo>
<mi>b</mi>
</mrow>
</semantics>
</math>
MathML
数式を XML で表現
標準規格
機械的処理がしやすい
😟手で書くのが大変
<math display="block" xmlns="...">
<semantics>
<mrow>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo>−</mo><mi>x</mi>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mrow>
<mo stretchy="true" form="prefix">(</mo>
<mfrac><mi>a</mi><mn>2</mn></mfrac>
<mo stretchy="true" form="postfix">)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>−</mo>
<mi>b</mi>
</mrow>
</semantics>
</math>
!
デバイスによって

対応状況がまちまち
MathML 対応状況
MathML 対応状況
😟 iBooks: 部分的に対応
簡単な数式なら組めるが、
まだまだ崩れる
縦書きと混ぜるのは絶望的
iBooks による数式
MathML 対応状況
😟 iBooks: 部分的に対応
簡単な数式なら組めるが、
まだまだ崩れる
縦書きと混ぜるのは絶望的
😵 Kindle: ほぼ未対応
iBooks による数式
Kindle による数式
MathML 対応状況
😟 iBooks: 部分的に対応
簡単な数式なら組めるが、
まだまだ崩れる
縦書きと混ぜるのは絶望的
😵 Kindle: ほぼ未対応
現状では MathML を使うのは
現実的ではない
iBooks による数式
Kindle による数式
MathML 対応状況
😟 iBooks: 部分的に対応
簡単な数式なら組めるが、
まだまだ崩れる
縦書きと混ぜるのは絶望的
😵 Kindle: ほぼ未対応
現状では MathML を使うのは
現実的ではない
iBooks による数式
Kindle による数式
➡ 各社が対応すれば将来的
には標準になるだろう
画像として埋め込む
画像として埋め込む
画像フォーマットはどうするべきか?
画像として埋め込む
画像フォーマットはどうするべきか?
電子書籍は文字の拡大縮小が可能
画像として埋め込む
画像フォーマットはどうするべきか?
電子書籍は文字の拡大縮小が可能
PNG や JPEG のようなラスター形式だと拡
大・縮小した際に粗くなる恐れがある
画像として埋め込む
画像フォーマットはどうするべきか?
電子書籍は文字の拡大縮小が可能
PNG や JPEG のようなラスター形式だと拡
大・縮小した際に粗くなる恐れがある
拡大可能なベクター形式であるSVGが望まし
いだろう
例
例
同じ見た目の数式がどの環境
でもできる
iBooks
Kindle
例
同じ見た目の数式がどの環境
でもできる
😟数式ごとにサイズを手動で指
定してやる必要がある
iBooks
Kindle
例
同じ見た目の数式がどの環境
でもできる
😟数式ごとにサイズを手動で指
定してやる必要がある
😟拡大すると少しフォントが太
くなることがある
iBooks
Kindle
例
同じ見た目の数式がどの環境
でもできる
😟数式ごとにサイズを手動で指
定してやる必要がある
😟拡大すると少しフォントが太
くなることがある
😟大量の画像が入るので、描画
が少し遅くなる
iBooks
Kindle
例
同じ見た目の数式がどの環境
でもできる
😟数式ごとにサイズを手動で指
定してやる必要がある
😟拡大すると少しフォントが太
くなることがある
😟大量の画像が入るので、描画
が少し遅くなる
😟数式を一々画像に変換する必
要
iBooks
Kindle
EPUB数式まとめ
EPUB数式まとめ
MathML
EPUB数式まとめ
MathML
標準規格
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
😟対応していても描画機能が足りないことが多い
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
😟対応していても描画機能が足りないことが多い
SVG画像として配置
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
😟対応していても描画機能が足りないことが多い
SVG画像として配置
どこでも同じ見た目の数式が書ける
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
😟対応していても描画機能が足りないことが多い
SVG画像として配置
どこでも同じ見た目の数式が書ける
😟見易い描画のためには手直しが必要
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
😟対応していても描画機能が足りないことが多い
SVG画像として配置
どこでも同じ見た目の数式が書ける
😟見易い描画のためには手直しが必要
😟画像を多用するのでやや重くなる
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
😟対応していても描画機能が足りないことが多い
SVG画像として配置
どこでも同じ見た目の数式が書ける
😟見易い描画のためには手直しが必要
😟画像を多用するのでやや重くなる
😟いずれにせよ TeX の数式を変換する必要がある
EPUB数式まとめ
MathML
標準規格
😵現状では未対応なデバイスが多い
😟対応していても描画機能が足りないことが多い
SVG画像として配置
どこでも同じ見た目の数式が書ける
😟見易い描画のためには手直しが必要
😟画像を多用するのでやや重くなる
😟いずれにせよ TeX の数式を変換する必要がある
➡ 現状では SVG 画像として埋め込むのが局所最適解
Table of Contents
EPUBの仕組みと数式
EPUB の仕組み
EPUB と数式
数学者がEPUBを書く方法
Pandoc によるワークフロー
Table of Contents
EPUBの仕組みと数式
EPUB の仕組み
EPUB と数式
数学者がEPUBを書く方法
Pandoc によるワークフロー
数学者がEPUBを書く方法
実際のEPUB作業
実際のEPUB作業
EPUB を一から手で書くのは理想的ではない
実際のEPUB作業
EPUB を一から手で書くのは理想的ではない
新しい文法の習得、既存の資源が生かせない、

数式を全部手で変換するのはつらい
実際のEPUB作業
EPUB を一から手で書くのは理想的ではない
新しい文法の習得、既存の資源が生かせない、

数式を全部手で変換するのはつらい
    など慣れた形式で書きたい(特に数式!)
実際のEPUB作業
EPUB を一から手で書くのは理想的ではない
新しい文法の習得、既存の資源が生かせない、

数式を全部手で変換するのはつらい
    など慣れた形式で書きたい(特に数式!)
? から変換出来ないか?
実際のEPUB作業
EPUB を一から手で書くのは理想的ではない
新しい文法の習得、既存の資源が生かせない、

数式を全部手で変換するのはつらい
    など慣れた形式で書きたい(特に数式!)
? から変換出来ないか?
😄 Pandoc ならできる!
Pandoc
Pandoc
Pandoc: a universal document converter
Pandoc
Pandoc: a universal document converter
Haskell製
Pandoc
Pandoc: a universal document converter
Haskell製
様々なドキュメント形式の間の相互変換ツール
Pandoc
Pandoc: a universal document converter
Haskell製
様々なドキュメント形式の間の相互変換ツール
対応形式:MS Word,    , HTML, EPUB,
InDesign, Markdown,...
Pandoc
Pandoc: a universal document converter
Haskell製
様々なドキュメント形式の間の相互変換ツール
対応形式:MS Word,    , HTML, EPUB,
InDesign, Markdown,...
EPUB
Pandoc
Pandoc: a universal document converter
Haskell製
様々なドキュメント形式の間の相互変換ツール
対応形式:MS Word,    , HTML, EPUB,
InDesign, Markdown,...
EPUB
➡  を EPUB に変換出来る!
例
$ pandoc -S -t epub3 -o formalism.epub
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
--bibliography=biblio.bib
formalism-in-math.tex
例
$ pandoc -S -t epub3 -o formalism.epub
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
--bibliography=biblio.bib
formalism-in-math.tex
EPUB3 へ変換
-t epub3
例
$ pandoc -S -t epub3 -o formalism.epub
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
--bibliography=biblio.bib
formalism-in-math.tex
EPUB3 へ変換
メタデータ(タイ
トル・著者等)と
デザインの指定
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
例
$ pandoc -S -t epub3 -o formalism.epub
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
--bibliography=biblio.bib
formalism-in-math.tex
EPUB3 へ変換
メタデータ(タイ
トル・著者等)と
デザインの指定
参考文献も

自動処理! --bibliography=biblio.bib
例
ライブラリと実行ファイルの二種類がある
$ pandoc -S -t epub3 -o formalism.epub
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
--bibliography=biblio.bib
formalism-in-math.tex
EPUB3 へ変換
メタデータ(タイ
トル・著者等)と
デザインの指定
参考文献も

自動処理!
例
ライブラリと実行ファイルの二種類がある
単純な変換処理なら実行ファイルで十分
$ pandoc -S -t epub3 -o formalism.epub
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
--bibliography=biblio.bib
formalism-in-math.tex
EPUB3 へ変換
メタデータ(タイ
トル・著者等)と
デザインの指定
参考文献も

自動処理!
例
ライブラリと実行ファイルの二種類がある
単純な変換処理なら実行ファイルで十分
$ pandoc -S -t epub3 -o formalism.epub
--epub-metadata=metadata.xml
--epub-stylesheet=epub.css
--bibliography=biblio.bib
formalism-in-math.tex
EPUB3 へ変換
メタデータ(タイ
トル・著者等)と
デザインの指定
参考文献も

自動処理!
? 単純でない処理は?
単純でない処理の例
日本語特有の組版(ルビ、圏点、…)の変換
数式のSVGへの変換
MathMLへの変換は勝手にやってくれる
独自に定義した定理環境の変換
単純でない処理の例
日本語特有の組版(ルビ、圏点、…)の変換
数式のSVGへの変換
MathMLへの変換は勝手にやってくれる
独自に定義した定理環境の変換
➡ 変換フィルターを自分で書く!
変換フィルター?
変換フィルター?
Pandoc は変換途中の文書構造をJSONに変換して、
間に独自の変換フィルターを噛ませることが出来る
変換フィルター?
Pandoc は変換途中の文書構造をJSONに変換して、
間に独自の変換フィルターを噛ませることが出来る
JSON がパーズ出来ればよいので言語非依存
変換フィルター?
Pandoc は変換途中の文書構造をJSONに変換して、
間に独自の変換フィルターを噛ませることが出来る
JSON がパーズ出来ればよいので言語非依存
Pandoc がパーズ出来なかった    はそのまま処理せ
ず情報を持たせるようにできる
変換フィルター?
Pandoc は変換途中の文書構造をJSONに変換して、
間に独自の変換フィルターを噛ませることが出来る
JSON がパーズ出来ればよいので言語非依存
Pandoc がパーズ出来なかった    はそのまま処理せ
ず情報を持たせるようにできる
その生   をパーズして適切なHTMLに変換するよ
うにしてやればいい!

(参考:Haskell には   を弄れるライブラリがある)
フィルターの例
フィルターの例
拙作フィルター集:pandoc-japanese-filters
フィルターの例
拙作フィルター集:pandoc-japanese-filters
数式のSVGへの変換、独自定理環境の変換、

日本語組版の変換 等
フィルターの例
拙作フィルター集:pandoc-japanese-filters
数式のSVGへの変換、独自定理環境の変換、

日本語組版の変換 等
後は数式のサイズや余白を調整すればよいだけ
フィルターの例
拙作フィルター集:pandoc-japanese-filters
数式のSVGへの変換、独自定理環境の変換、

日本語組版の変換 等
後は数式のサイズや余白を調整すればよいだけ
$	 pandoc	 -S	 -R	 -F	 env-to-div-filter	 -F	 math-to-svg-filter

	 	 	 	 	 	 	 	 	 -t	 epub3	 -o	 formalism.epub	 

	 	 	 	 	 	 	 	 	 --epub-metadata=metadata.xml	 --epub-stylesheet=epub.css

	 	 	 --bibliography=biblio.bib

	 	 	 	 	 	 	 	 	 formalism-in-math.tex
フィルターの例
拙作フィルター集:pandoc-japanese-filters
数式のSVGへの変換、独自定理環境の変換、

日本語組版の変換 等
後は数式のサイズや余白を調整すればよいだけ
$	 pandoc	 -S	 -R	 -F	 env-to-div-filter	 -F	 math-to-svg-filter

	 	 	 	 	 	 	 	 	 -t	 epub3	 -o	 formalism.epub	 

	 	 	 	 	 	 	 	 	 --epub-metadata=metadata.xml	 --epub-stylesheet=epub.css

	 	 	 --bibliography=biblio.bib

	 	 	 	 	 	 	 	 	 formalism-in-math.tex	 
生LaTeXの許可
-R
フィルターの例
拙作フィルター集:pandoc-japanese-filters
数式のSVGへの変換、独自定理環境の変換、

日本語組版の変換 等
後は数式のサイズや余白を調整すればよいだけ
$	 pandoc	 -S	 -R	 -F	 env-to-div-filter	 -F	 math-to-svg-filter

	 	 	 	 	 	 	 	 	 -t	 epub3	 -o	 formalism.epub	 

	 	 	 	 	 	 	 	 	 --epub-metadata=metadata.xml	 --epub-stylesheet=epub.css

	 	 	 --bibliography=biblio.bib

	 	 	 	 	 	 	 	 	 formalism-in-math.tex	 
生LaTeXの許可 フィルターの指定
-F	 env-to-div-filter	 -F	 math-to-svg-filter
その他
その他
Markdown など他の形式で

数式部分だけ   で書くこと
もできる
数式まぜ書き Markdown
====================
このような形 $mathcal{M} Vdash
varphi$ で、**インライン数式**や、
$$int_{-infty}^infty e^{-x^2}
mathrm{d}x$$
のようにディスプレイ数式も混ぜられる。
その他
Markdown など他の形式で

数式部分だけ   で書くこと
もできる
パーズの前後で情報が失われ
る場合(Docxなど)は自分で
パーザを書く
数式まぜ書き Markdown
====================
このような形 $mathcal{M} Vdash
varphi$ で、**インライン数式**や、
$$int_{-infty}^infty e^{-x^2}
mathrm{d}x$$
のようにディスプレイ数式も混ぜられる。
その他
Markdown など他の形式で

数式部分だけ   で書くこと
もできる
パーズの前後で情報が失われ
る場合(Docxなど)は自分で
パーザを書く
数式まぜ書き Markdown
====================
このような形 $mathcal{M} Vdash
varphi$ で、**インライン数式**や、
$$int_{-infty}^infty e^{-x^2}
mathrm{d}x$$
のようにディスプレイ数式も混ぜられる。
フィルターではなく、ライブラリを使って Haskell で直にプロ
グラムを書くこともできる
その他
Markdown など他の形式で

数式部分だけ   で書くこと
もできる
パーズの前後で情報が失われ
る場合(Docxなど)は自分で
パーザを書く
数式まぜ書き Markdown
====================
このような形 $mathcal{M} Vdash
varphi$ で、**インライン数式**や、
$$int_{-infty}^infty e^{-x^2}
mathrm{d}x$$
のようにディスプレイ数式も混ぜられる。
フィルターではなく、ライブラリを使って Haskell で直にプロ
グラムを書くこともできる
Pandoc は EPUB に限らず、ウェブサイトの生成にも使える
その他
Markdown など他の形式で

数式部分だけ   で書くこと
もできる
パーズの前後で情報が失われ
る場合(Docxなど)は自分で
パーザを書く
数式まぜ書き Markdown
====================
このような形 $mathcal{M} Vdash
varphi$ で、**インライン数式**や、
$$int_{-infty}^infty e^{-x^2}
mathrm{d}x$$
のようにディスプレイ数式も混ぜられる。
フィルターではなく、ライブラリを使って Haskell で直にプロ
グラムを書くこともできる
Pandoc は EPUB に限らず、ウェブサイトの生成にも使える
私のサイトでは TeX や Markdown から PDF / HTML を生成する
のに使っています
まとめ
まとめ
Pandoc を使えば好きなフォーマットから自動
で EPUB を生成出来る
まとめ
Pandoc を使えば好きなフォーマットから自動
で EPUB を生成出来る
数式を一々手で画像に変換しなくていい!
まとめ
Pandoc を使えば好きなフォーマットから自動
で EPUB を生成出来る
数式を一々手で画像に変換しなくていい!
細かな変換処理はフィルターを書く
まとめ
Pandoc を使えば好きなフォーマットから自動
で EPUB を生成出来る
数式を一々手で画像に変換しなくていい!
細かな変換処理はフィルターを書く
Pandoc は EPUB のみならず色々な書類を生成
するのにも使える
まとめ
まとめ
電子書籍は EPUB で
まとめ
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
まとめ
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
見栄をよくするには自分でサイズ調整
まとめ
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
見栄をよくするには自分でサイズ調整
将来的には MathML?
まとめ
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
見栄をよくするには自分でサイズ調整
将来的には MathML?
EPUB 生成は Pandoc で!
まとめ
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
見栄をよくするには自分でサイズ調整
将来的には MathML?
EPUB 生成は Pandoc で!
    など既存の資源を自動変換出来る
まとめ
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
見栄をよくするには自分でサイズ調整
将来的には MathML?
EPUB 生成は Pandoc で!
    など既存の資源を自動変換出来る
数式画像生成の自動化
まとめ
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
見栄をよくするには自分でサイズ調整
将来的には MathML?
EPUB 生成は Pandoc で!
    など既存の資源を自動変換出来る
数式画像生成の自動化
細かい変換処理はフィルターを書く
Any Questions?
電子書籍は EPUB で
数式は現状 SVG で張り込むのがよい
見栄をよくするには自分でサイズ調整
将来的には MathML?
EPUB 生成は Pandoc で!
    など既存の資源を自動変換出来る
数式画像生成の自動化
細かい変換処理はフィルターを書く

More Related Content

What's hot

ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版Keiichiro Shikano
 
Dapr on Kubernetes
Dapr on KubernetesDapr on Kubernetes
Dapr on KubernetesShiho ASA
 
PHP Object Injection入門
PHP Object Injection入門PHP Object Injection入門
PHP Object Injection入門Yu Iwama
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門Norishige Fukushima
 
オープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 Nagoya
オープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 Nagoyaオープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 Nagoya
オープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 NagoyaSatoshi Shimazaki
 
マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜Yoshiki Nakagawa
 
Apache Sparkについて
Apache SparkについてApache Sparkについて
Apache SparkについてBrainPad Inc.
 
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会Takayuki Kyowa
 
IoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache FlinkIoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache FlinkTakanori Suzuki
 
プログラマ目線で見た “The DAO事件” とは
プログラマ目線で見た “The DAO事件” とはプログラマ目線で見た “The DAO事件” とは
プログラマ目線で見た “The DAO事件” とはYuto Takei
 
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfestay_taka_23
 
JenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudy
JenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudyJenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudy
JenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudyKazuhito Miura
 
Lambda layerをDeployする方法を調べる
Lambda layerをDeployする方法を調べるLambda layerをDeployする方法を調べる
Lambda layerをDeployする方法を調べるshotaueda3
 
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方Hiroshi Tokumaru
 
Visual C++で使えるC++11
Visual C++で使えるC++11Visual C++で使えるC++11
Visual C++で使えるC++11nekko1119
 
ライブストリーミングの基礎知識
ライブストリーミングの基礎知識ライブストリーミングの基礎知識
ライブストリーミングの基礎知識kumaryu
 
Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築伊藤 祐策
 
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?Teppei Sato
 

What's hot (20)

ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版
 
Dapr on Kubernetes
Dapr on KubernetesDapr on Kubernetes
Dapr on Kubernetes
 
PHP Object Injection入門
PHP Object Injection入門PHP Object Injection入門
PHP Object Injection入門
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
 
オープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 Nagoya
オープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 Nagoyaオープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 Nagoya
オープンソースのクラウド基盤 CloudStackによるIaaS構築入門 @OSC 2013 Nagoya
 
マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜
 
Zabbix概論
Zabbix概論Zabbix概論
Zabbix概論
 
Apache Sparkについて
Apache SparkについてApache Sparkについて
Apache Sparkについて
 
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会
 
IoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache FlinkIoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache Flink
 
プログラマ目線で見た “The DAO事件” とは
プログラマ目線で見た “The DAO事件” とはプログラマ目線で見た “The DAO事件” とは
プログラマ目線で見た “The DAO事件” とは
 
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
 
JenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudy
JenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudyJenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudy
JenkinsとDockerって何が良いの? 〜言うてるオレもわからんわ〜 #jenkinsstudy
 
Lambda layerをDeployする方法を調べる
Lambda layerをDeployする方法を調べるLambda layerをDeployする方法を調べる
Lambda layerをDeployする方法を調べる
 
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
 
Visual C++で使えるC++11
Visual C++で使えるC++11Visual C++で使えるC++11
Visual C++で使えるC++11
 
RubyでDSL
RubyでDSLRubyでDSL
RubyでDSL
 
ライブストリーミングの基礎知識
ライブストリーミングの基礎知識ライブストリーミングの基礎知識
ライブストリーミングの基礎知識
 
Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築
 
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
 

More from Hiromi Ishii

ものまね鳥を愛でる 結合子論理と計算
ものまね鳥を愛でる 結合子論理と計算ものまね鳥を愛でる 結合子論理と計算
ものまね鳥を愛でる 結合子論理と計算Hiromi Ishii
 
Freer Monads, More Extensible Effects
Freer Monads, More Extensible EffectsFreer Monads, More Extensible Effects
Freer Monads, More Extensible EffectsHiromi Ishii
 
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性Lebesgue可測性に関するSoloayの定理と実数の集合の正則性
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性Hiromi Ishii
 
実数の集合はどこまで可測になれるか?
実数の集合はどこまで可測になれるか?実数の集合はどこまで可測になれるか?
実数の集合はどこまで可測になれるか?Hiromi Ishii
 
御清聴ありがとうございました
御清聴ありがとうございました御清聴ありがとうございました
御清聴ありがとうございましたHiromi Ishii
 
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項Hiromi Ishii
 
技術者が知るべき Gröbner 基底
技術者が知るべき Gröbner 基底技術者が知るべき Gröbner 基底
技術者が知るべき Gröbner 基底Hiromi Ishii
 
数学プログラムを Haskell で書くべき 6 の理由
数学プログラムを Haskell で書くべき 6 の理由数学プログラムを Haskell で書くべき 6 の理由
数学プログラムを Haskell で書くべき 6 の理由Hiromi Ishii
 
Algebraic DP: 動的計画法を書きやすく
Algebraic DP: 動的計画法を書きやすくAlgebraic DP: 動的計画法を書きやすく
Algebraic DP: 動的計画法を書きやすくHiromi Ishii
 
Yesod でブログエンジンをつくってみた
Yesod でブログエンジンをつくってみたYesod でブログエンジンをつくってみた
Yesod でブログエンジンをつくってみたHiromi Ishii
 
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜Hiromi Ishii
 
Yesodを支える技術
Yesodを支える技術Yesodを支える技術
Yesodを支える技術Hiromi Ishii
 
Alloy Analyzer のこと
Alloy Analyzer のことAlloy Analyzer のこと
Alloy Analyzer のことHiromi Ishii
 
Invertible-syntax 入門
Invertible-syntax 入門Invertible-syntax 入門
Invertible-syntax 入門Hiromi Ishii
 
Metaprogramming in Haskell
Metaprogramming in HaskellMetaprogramming in Haskell
Metaprogramming in HaskellHiromi Ishii
 
Template Haskell とか
Template Haskell とかTemplate Haskell とか
Template Haskell とかHiromi Ishii
 
実践・完全犯罪のつくり方
実践・完全犯罪のつくり方実践・完全犯罪のつくり方
実践・完全犯罪のつくり方Hiromi Ishii
 

More from Hiromi Ishii (18)

ものまね鳥を愛でる 結合子論理と計算
ものまね鳥を愛でる 結合子論理と計算ものまね鳥を愛でる 結合子論理と計算
ものまね鳥を愛でる 結合子論理と計算
 
Freer Monads, More Extensible Effects
Freer Monads, More Extensible EffectsFreer Monads, More Extensible Effects
Freer Monads, More Extensible Effects
 
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性Lebesgue可測性に関するSoloayの定理と実数の集合の正則性
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性
 
実数の集合はどこまで可測になれるか?
実数の集合はどこまで可測になれるか?実数の集合はどこまで可測になれるか?
実数の集合はどこまで可測になれるか?
 
御清聴ありがとうございました
御清聴ありがとうございました御清聴ありがとうございました
御清聴ありがとうございました
 
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
 
技術者が知るべき Gröbner 基底
技術者が知るべき Gröbner 基底技術者が知るべき Gröbner 基底
技術者が知るべき Gröbner 基底
 
数学プログラムを Haskell で書くべき 6 の理由
数学プログラムを Haskell で書くべき 6 の理由数学プログラムを Haskell で書くべき 6 の理由
数学プログラムを Haskell で書くべき 6 の理由
 
Algebraic DP: 動的計画法を書きやすく
Algebraic DP: 動的計画法を書きやすくAlgebraic DP: 動的計画法を書きやすく
Algebraic DP: 動的計画法を書きやすく
 
Yesod でブログエンジンをつくってみた
Yesod でブログエンジンをつくってみたYesod でブログエンジンをつくってみた
Yesod でブログエンジンをつくってみた
 
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
 
Yesodを支える技術
Yesodを支える技術Yesodを支える技術
Yesodを支える技術
 
Alloy Analyzer のこと
Alloy Analyzer のことAlloy Analyzer のこと
Alloy Analyzer のこと
 
Invertible-syntax 入門
Invertible-syntax 入門Invertible-syntax 入門
Invertible-syntax 入門
 
最終発表
最終発表最終発表
最終発表
 
Metaprogramming in Haskell
Metaprogramming in HaskellMetaprogramming in Haskell
Metaprogramming in Haskell
 
Template Haskell とか
Template Haskell とかTemplate Haskell とか
Template Haskell とか
 
実践・完全犯罪のつくり方
実践・完全犯罪のつくり方実践・完全犯罪のつくり方
実践・完全犯罪のつくり方
 

(数式の入った)本をつくる