コンテンツにスキップ

中高数学+物理+プログラミングのオンライン勉強会

概要

勉強会用に準備した資料をせっかくなので公開. Zoom でやっていて動画も撮っているが, それは私以外の参加者の声も入っているので非公開.

もともとは次のコンテンツのブラッシュアップのためなどいくつかの目的で, 必要なことを教えるので協力してくれないか, という感じではじめた勉強会.

周辺知識を揃えないとつらくなってきたので, IT 関係の基礎知識も紹介するようになった. あと課題もあると嬉しいという話があり, 実際に中高生に勉強してもらうときも参考になるだろうと思い, 課題も毎回作って適当に解説もしている.

ipynb to md

必要なら nbconver で markdown 化. ブログにあげるときは面倒なので画像はアップしていない.

1
2
$ jupyter nbconvert --to <output format> <input notebook>
$ jupyter nbconvert --to markdown 2020-.*.ipynb

企画趣旨

はじめに

いま, 1 年くらいの長期にわたって知人と少人数でゆるく統計学・機械学習系の勉強会をしている. そこからのスピンオフで Python と基本的な数学に関する勉強会をやろうと思っていて, その内容に関する事前説明資料として記事にする. 説明資料が長文になるのでその共有のためもあり, 他の人もそれぞれで同じようなことをやってほしいのもあり, この計画が参考になるだろうと思ったのもある. 私が持っているコンテンツを提供できるので, 必要なら連絡してほしい.

バリバリと進んだことがやりたい中高生向けの数学・物理・プログラミング教育を進めようと思っていて, いまちょうど新型コロナで話が潰れているが, 実際に地元の知り合いの政治家・自治体にも提案はしている. Jupyter notebook でコンテンツを作っていて, まだ完全にチェックできていないオンラインのプログラミング環境の検証も兼ねている. 経験上も慣れていない人がプログラミング環境をローカルに作るのは本当に大変なので, Google Colabolatory などプログラミング環境をオンラインで完結させたい. よくも悪くも時代がそうなっていくだろうというのもある.

言語として Python は好きではないが, 事実上の入門デファクトという感もあるので, とりあえずそこにした. 数学・物理系で入門レベルの情報がとても多く, それなりに質もあり, バリエーション豊かなところは最THE高とは思う

ちなみにさらなるコンテンツ作成のために次の GitHub リポジトリにコードをためていて, それで生成した動画は YouTube に上げている. 興味があればぜひ眺めてほしい.

さらに次のページに数学系の無料の通信講座をいくつか置いてある. 登録用のページだけでも数学・物理の勉強をする参考になると思うので, これも興味があれば眺めてほしい.

大方針

私の趣味・守備範囲もあるので, 数学・物理方面からプログラミングに入る. 基本的な方向性としては次の無料通信講座と, その続編として作ったコンテンツを基礎にして展開する.

次の大方針で進める.

  • まずは細かいことはさておき, プログラミングでできることをゴリゴリ紹介する
  • まずはお絵描き中心
  • 離散化すれば四則演算でしかないので微分・積分をダイレクトに数値計算する形で進める
    • まずは波動方程式・拡散方程式を見せる
    • 波と拡散というイメージと視覚がマッチした対象だから
    • まずは概要を掴むのが目的なので本質的な数学部分が難しくなるのは気にしない
    • 何をするにも慣れが必要なので, とにかく浴びて慣れてもらうのが目的
  • お絵描き+数値計算で Python プログラミングの気分を掴む
  • 少しずつプログラムの詳細を見ていく
    • 暴力的な量の四則演算を進めるだけなので「数学」の話は最低限に留めながら進める
  • ある程度慣れてきた段階でプログラムと並行して数学の話をする

概要・議論の順番

いま考えているのは次のような感じ.

  • ある意味での終着点, 波動方程式・拡散方程式の数値計算結果の動画を見る・作ってみる
  • 偏微分方程式はわけわからなくても最終的に計算させる離散化の式はそれはそう, という感じのはずなのでそれを紹介する
  • 他にも微分方程式でどんな現象が表せてどんなことができるか紹介する
    • 常微分方程式の紹介
      • ホジキン-ハクスレー方程式 (大雑把に言ってノーベル医学・生理学賞の対象 (らしい)
      • フィッツヒュー・南雲方程式
      • 放射性物質の崩壊の方程式
      • ロジスティック方程式
      • 単振動の方程式
    • 微分方程式の数値計算の観点から見た中高数学の復習とプログラムへの落とし込み
  • 中高数学の復習をしつつ Python プログラムへの落とし込み

いったん別のところで組み上げたコンテンツがあるので, それをブラッシュアップしつつ進める予定. その意味では目次もある: 中高数学の復習の部分が詳しいだけではある. 質疑応答しつつ, 適当にプログラミングについても補足説明を入れていく.

ちなみに波動方程式や拡散方程式の数値計算結果は次のような感じ.

とりあえずはこんなところか. 録画しておいて, YouTube にも公開する予定. 他の人が勉強会をする参考になるはずだから, 質問・コメントが来たらこちらにも回答を追加していこう.

2020-04-19課題

はじめに

  • コンテンツの案内ページ
  • GitHub へのリンク
  • 00-introduction_02_jupyter.ipynb を一通り読んで Jupyter notebook(大雑把には Google Colab も同じ)の概要を把握してください。特に次の点に注意して読んでください。
  • テキストセルを作ってください。
    • テキストセルに何か文章を書いてみてください。文章は「あ」だけでも構いません。
    • TeX 形式で次のような式を打ってみてください。「このセル」をダブルクリックで開くとどうすれば式が打てるかわかるので、そのコピペで構いません。他にも資料を漁ってどんな風に書くとどう表示されるか眺めてみるといいでしょう。

$$\int_0^1 f(x) \, dx$$

  • コードセルを作ってください。
    • 01-basic_01_fundamental.ipynb を参考に print("Hello, World!") を実行してみてください。「実行結果出力欄」に「Hello, World!」と出れば成功です。
  • もう 1 つコードセルを作ってください。
    • 01-basic_03_matplotlib.ipynb を参考に、グラフを 1 つ書いてみてください。コピペでグラフが出てくることを確認するだけで十分です。
    • お好みでの追加タスク:いろいろ推測しながらプログラムを少しいじってみて、直線以外のグラフを描いたり、グラフを描く範囲を変えてみてください。

プログラムを勉強するときの注意

  • プログラミング「言語」と言われるように、いわゆる語学を勉強するときのコツがある程度流用できます。
  • 「英作文は英借文」というように、既に動いている(通じる)「例文」をコピペしてみましょう。そこからパーツを少し変えてみてどうなるか試します。
  • プログラミング言語は機械が意味を判定するので、文法に厳格に沿っていないと「きちんと文法通りに話せ」と怒られます。
    • ある程度まで来たらこの文法もきちんと勉強する必要があります。
    • よほどの趣味を持っていない限り、文法の勉強は初学の段階であまり面白いものでもないので、まずは 01-basic_01_fundamental.ipynb に書いてあることを雑に眺めて気分を掴んでください。
    • 公式のチュートリアルも参考になります。
      • Web 上の資源の問題として、リンクがたくさん張られている関係でいろいろな所に飛ばされる(飛びたくなる)ことがあります。本だと自分でページを飛ばさない限り一直線の道を歩むしかないので、Web 上の資源で勉強すると気が散るなら本を買ってざっと眺めるのも一手です。
  • 一般の語学でも実際に読み書きしないと身につかないように、プログラムも実際に読み書きしないと身につきません。Jupyter notebook 配布のいいところはすぐにコード実行できるところにあります。パチパチ実行してみてください。

解答例

参考:TeX

  • $f(x)$ のように 1 つのドルマークで囲むと地の文に普通に埋め込まれる式として $\int f(x) dx$ が書けます。
  • $$\int f(x) dx, \left{a\in A \mid a>0, b>0 \text{かつ} c>0\right}$$ と 2 つのドルマークで囲むと別行立ての式 $$\int f(x) dx$$ が書けます。
  • \begin{align} \int f(x) dx \end{align} などと書くと、数式環境下での式が書けます。 \begin{align} \int f(x) dx \end{align}
  • 複数行ある複雑な式を書くときは数式環境下で式を書きます:参考リンク
  • 数式環境と $$\int f(x)dx$$ 型との違い・使い分けについては次のように考えましょう.
  • $$\int f(x) dx$$ はあくまで地の文に埋め込みたいが縦・横に長い式なので別行立ての方が見やすい場合に使う
  • \begin{align} \int f(x) dx \end{align} は複数行にわたるハードな式展開・計算を書くときに使う.

$\epsilon$ $\varepsilon$

$$A = (a_{ij}) = \begin{pmatrix} a_{11} & a_{12} & \cdots & a_{1n} \ a_{21} & a_{22} & \cdots & a_{2n} \ \vdots & \vdots & \ddots & \vdots \ a_{m1} & a_{m2} & \cdots & a_{mn} \end{pmatrix}.$$

参考:Markdown

  • テキストセルは TeX の他, markdown という形式で書けます.
  • 参考リンク
  • 参考リンク
  • 参考リンク
  • 段落分けや文字の強調などはこの形式に沿っています.
  • 主に技術系の文書を書くために使われる書式なので, 過度な装飾はできません (そもそもそういう機能がない).

コード例

  • sympy のサンプルを紹介します。
  • Google Colab 上ではオリジナルの Jupyter より面倒で、追加処理が必要です。
    • オリジナルの Jupyter では動くのに Google Colab 上では動かない (らしい) プログラムもあります
    • 例:4 次方程式の解の公式の表示.
  • 実際に一通り眺めて sympy をできる限り Google Colab 上でも動くようにするのはこの勉強会の目的の 1 つです.

```python !pip install --upgrade sympy

import sympy as sp from sympy.plotting import plot from IPython.display import display

def custom_latex_printer(expr, options): from IPython.display import Math, HTML from google.colab.output._publish import javascript url = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_CHTML" javascript(content="""window.MathJax = { tex2jax: { inlineMath: [ ['$','$'] ], processEscapes: true } };""") javascript(url=url) return sp.latex(expr, options)

sp.init_printing(use_latex="mathjax", latex_printer=custom_latex_printer)

x = sp.Symbol('x') expr = x*2-12x+8 display(expr) ```

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
 Collecting sympy
 [?25l  Downloading https://files.pythonhosted.org/packages/ce/5b/acc12e3c0d0be685601fc2b2d20ed18dc0bf461380e763afc9d0a548deb0/sympy-1.5.1-py2.py3-none-any.whl (5.6MB)
      |████████████████████████████████| 5.6MB 8.4MB/s
 [?25hRequirement already satisfied, skipping upgrade: mpmath>=0.19 in /usr/local/lib/python3.6/dist-packages (from sympy) (1.1.0)
 Installing collected packages: sympy
   Found existing installation: sympy 1.1.1
     Uninstalling sympy-1.1.1:
       Successfully uninstalled sympy-1.1.1
 Successfully installed sympy-1.5.1



 <IPython.core.display.Javascript object>

$\displaystyle x^{2} - 12 x + 8$

python x = sp.Symbol('x') y = sp.Symbol('y') expr1 = 2*x + 3*y - 6 expr2 = 3*x + 2*y - 12 display(expr1) display(expr2) #display(sp.solve((expr1, expr2))) # Math Processing error になる

1
 <IPython.core.display.Javascript object>

$\displaystyle 2 x + 3 y - 6$

1
 <IPython.core.display.Javascript object>

$\displaystyle 3 x + 2 y - 12$

python display(sp.solve((expr1, expr2)))

1
 <IPython.core.display.Javascript object>

$\displaystyle \left{ x : \frac{24}{5}, \ y : - \frac{6}{5}\right}$

  • 上の方程式は厳密解として $x=4.8,y=-1.2$ を持つ。
  • これの近似解として例えば $x=4.78888888,y=-1.1999999$

python p = plot(-(2/3)*x - 2, - (3/2)*x - 6, legend=True, show=False) p[0].line_color = 'b' p[1].line_color = 'r' p.show()

1
2
3
4
5
6
 /usr/local/lib/python3.6/dist-packages/sympy/plotting/plot.py:1065: MatplotlibDeprecationWarning:
 The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
   self.ax[i].spines['left'].set_smart_bounds(True)
 /usr/local/lib/python3.6/dist-packages/sympy/plotting/plot.py:1066: MatplotlibDeprecationWarning:
 The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
   self.ax[i].spines['bottom'].set_smart_bounds(False)

```python eq1 = x2 + y2 - 1 eq2 = x - y

plot1 = sp.plot_implicit(eq1, line_color="blue", show=False) plot2 = sp.plot_implicit(eq2, line_color="green", show=False) plot1.extend(plot2) plot1.show() ```

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
 /usr/local/lib/python3.6/dist-packages/sympy/plotting/plot.py:1065: MatplotlibDeprecationWarning:
 The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
   self.ax[i].spines['left'].set_smart_bounds(True)
 /usr/local/lib/python3.6/dist-packages/sympy/plotting/plot.py:1066: MatplotlibDeprecationWarning:
 The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
   self.ax[i].spines['bottom'].set_smart_bounds(False)
 /usr/local/lib/python3.6/dist-packages/sympy/plotting/plot.py:1096: MatplotlibDeprecationWarning:
 The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
   ax.spines['left'].set_smart_bounds(False)
 /usr/local/lib/python3.6/dist-packages/sympy/plotting/plot.py:1097: MatplotlibDeprecationWarning:
 The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
   ax.spines['bottom'].set_smart_bounds(False)

```python import sympy as sp from sympy.plotting import plot from IPython.display import display

def custom_latex_printer(expr, options): from IPython.display import Math, HTML from google.colab.output._publish import javascript url = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_CHTML" javascript(content="""window.MathJax = { tex2jax: { inlineMath: [ ['$','$'] ], processEscapes: true } };""") javascript(url=url) return sp.latex(expr, options)

a,b,c,d,x = sp.symbols('a,b,c,d,x') expr = ax3 + bx*2 + cx + d

display(sp.solve(expr, x, dict=True)) ```

$\displaystyle \left[ \left{ x : - \frac{- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}}{3 \sqrt[3]{\frac{\sqrt{- 4 \left(- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}\right)^{3} + \left(\frac{27 d}{a} - \frac{9 b c}{a^{2}} + \frac{2 b^{3}}{a^{3}}\right)^{2}}}{2} + \frac{27 d}{2 a} - \frac{9 b c}{2 a^{2}} + \frac{b^{3}}{a^{3}}}} - \frac{\sqrt[3]{\frac{\sqrt{- 4 \left(- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}\right)^{3} + \left(\frac{27 d}{a} - \frac{9 b c}{a^{2}} + \frac{2 b^{3}}{a^{3}}\right)^{2}}}{2} + \frac{27 d}{2 a} - \frac{9 b c}{2 a^{2}} + \frac{b^{3}}{a^{3}}}}{3} - \frac{b}{3 a}\right}, \ \left{ x : - \frac{- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}}{3 \left(- \frac{1}{2} - \frac{\sqrt{3} i}{2}\right) \sqrt[3]{\frac{\sqrt{- 4 \left(- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}\right)^{3} + \left(\frac{27 d}{a} - \frac{9 b c}{a^{2}} + \frac{2 b^{3}}{a^{3}}\right)^{2}}}{2} + \frac{27 d}{2 a} - \frac{9 b c}{2 a^{2}} + \frac{b^{3}}{a^{3}}}} - \frac{\left(- \frac{1}{2} - \frac{\sqrt{3} i}{2}\right) \sqrt[3]{\frac{\sqrt{- 4 \left(- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}\right)^{3} + \left(\frac{27 d}{a} - \frac{9 b c}{a^{2}} + \frac{2 b^{3}}{a^{3}}\right)^{2}}}{2} + \frac{27 d}{2 a} - \frac{9 b c}{2 a^{2}} + \frac{b^{3}}{a^{3}}}}{3} - \frac{b}{3 a}\right}, \ \left{ x : - \frac{- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}}{3 \left(- \frac{1}{2} + \frac{\sqrt{3} i}{2}\right) \sqrt[3]{\frac{\sqrt{- 4 \left(- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}\right)^{3} + \left(\frac{27 d}{a} - \frac{9 b c}{a^{2}} + \frac{2 b^{3}}{a^{3}}\right)^{2}}}{2} + \frac{27 d}{2 a} - \frac{9 b c}{2 a^{2}} + \frac{b^{3}}{a^{3}}}} - \frac{\left(- \frac{1}{2} + \frac{\sqrt{3} i}{2}\right) \sqrt[3]{\frac{\sqrt{- 4 \left(- \frac{3 c}{a} + \frac{b^{2}}{a^{2}}\right)^{3} + \left(\frac{27 d}{a} - \frac{9 b c}{a^{2}} + \frac{2 b^{3}}{a^{3}}\right)^{2}}}{2} + \frac{27 d}{2 a} - \frac{9 b c}{2 a^{2}} + \frac{b^{3}}{a^{3}}}}{3} - \frac{b}{3 a}\right}\right]$

2020-04-19オンライン数学勉強会用イントロ

はじめに

まとめ

事前準備:sympy インストールとチェック

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
from sympy import *
from IPython.display import display

def custom_latex_printer(expr, **options):
    from IPython.display import Math, HTML
    from google.colab.output._publish import javascript
    url = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_CHTML"
    javascript(content="""window.MathJax = {
        tex2jax: {
            inlineMath: [ ['$','$'] ],
            processEscapes: true
        }
        };""")
    javascript(url=url)
    return latex(expr, **options)

init_printing(use_latex="mathjax", latex_printer=custom_latex_printer)

x = Symbol('x')
expr = x**2-12*x+8
display(expr)
1
<IPython.core.display.Javascript object>

$$x^{2} - 12 x + 8$$

はじめの注意

  • 吃音があるので聞きにくいと思います。
  • 言いにくい場合は文字で書きます。
  • いろいろ試験的な取り組みです。
  • この資料はあとで配ります。

大方針

  • Python でプログラミング
  • 将来に向けたいろいろなテストを兼ねる
  • 中高生または中高数学復習用に作ったコンテンツのテスト・流用
  • 試験的に Google Colabolratory を利用
  • いま使っている「これ」
  • ローカルの環境構築がいらない
  • TeX の形式を使うと式もきれいに書ける:$$\int_\Omega f(x) \, dx$$
  • 何回くらい・どのくらいの期間になるかは不明
  • なるべくゆっくり・ゆるく進める
  • 日々いろいろなタスクがある大人向けの勉強会なのでゴリゴリにやると疲れ果てて続かない
  • その代わり長期戦でのんびりやる
  • 予習はやりたければやる
  • 無理がない範囲で、長続きさせることを第一に
  • 復習は勉強会の中でやる
    • その分ペースも遅くなる
    • その遅さが気になるなら予習をしよう
  • 復習を自力でやれるくらいならはじめから独学できていると思う

勉強のコツ

  • 「すぐに理解する・できる」という幻想を捨てる
  • 同じことを何度も繰り返して、少しずつ慣れる
  • 究極的には「独学」が必要
  • そのサポートをするのがこの勉強会の目的
  • 細部が詳しい本はたくさんあり、いろいろなレベルの本がたくさんある
  • この勉強会の当面の主目的は概要を掴むこと
  • 細かいことが気になったら都度調べるなり質問するなりしてもらう
  • そしてすぐにわからなくても気にしない

進め方の方針

  • 細かいことはさておき, プログラミングでできることをゴリゴリ紹介する
  • まずはお絵描き中心:微分方程式を解く
  • 後の内容も「中高数学のネタを視覚化する」方向で進める。
  • 微分方程式に関して
    • 高校数学の最終目的地の微分・積分に直結する
    • 微分・積分は統計学をはじめとしたその他いろいろな応用でも主力
    • 離散化すれば四則演算でしかないので微分・積分をダイレクトに数値計算する形で進める
    • 今回、イメージづくりで波動方程式・拡散方程式を見せる
    • 波と拡散というイメージと視覚がマッチした対象だから
    • まずは概要を掴むのが目的なので本質的な数学部分が難しくなるのは気にしない
    • 何をするにも慣れが必要なので, とにかく浴びて慣れてもらうのが目的
  • お絵描き+数値計算で Python プログラミングの気分を掴む
  • 少しずつプログラムの詳細を見ていく
    • 暴力的な量の四則演算を進めるだけなので「数学」の話は最低限に留めながら進める
  • ある程度慣れてきた段階でプログラムと並行して数学の話をする

基礎コンテンツの紹介

  • 中高数学をプログラミングを軸にまとめた。
  • この講座ではプログラミング、特に Python については深くは解説しない
  • 必要ならその時々の新しい本で勉強すること。
  • 古い本を選んでしまうと、最新の環境でその本に書かれたプログラムが動かない可能性がある。

講座の構成

  1. 数学に関わる Python の基礎
    • 重要なライブラリ numpy のまとめ
    • 重要なライブラリ matplotlib のまとめ
    • 重要なライブラリ sympy のまとめ
    • 上記ライブラリを使った数学プログラミングのまとめ
  2. 線型代数:ベクトルと行列
  3. 微分積分
  4. 確率
  5. 統計
  6. 常微分方程式
  7. 偏微分方程式

大まかな説明

  • 最初の第 1 章:Python を使ってどんなことができるかを説明
    • 特に Python 自体の基本的な機能とライブラリの使い方を説明
    • 必要なコードは各箇所に書かれているので、ここは飛ばしてすぐに本編に進んでも問題ない
  • 線型代数以降の各章から、数学・プログラミングが混然一体になった本編がはじまる。
  • 常微分方程式の章を先に読んでみるのもおすすめします。
  • 「大事なことは何度でも」の精神

注意・当面の進めるイメージ

  • 下の 2 つを先にざっと眺める
  • 既に無料講座として公開している常微分方程式の章を少しずつ詳しく進める
  • 微分積分をやる

環境構築

Google Colab

  • いわゆる gmail のアカウントがあれば使える。
  • 「google colaboratory」でググってトップに出てくるページを開けば開くはず
  • 公式のチュートリアルもあるので、それを見よう

Python のインストール

  • インストールのことを「環境構築」とも呼ぶことにする
  • 将来の対応を考えて、勉強会では Google Colaboratory で進めてみる
  • ローカル(自分の PC)にインストールしたいなら、適当にやる
  • 経験上、「素人」の状態で環境構築は本当に大変
  • プログラミング・環境構築に慣れていない状態で数学と絡めた環境構築がしたいなら、Anaconda でインストールするのが楽
  • Google Colab 前提なのでこれ以上詳しくは触れない
  • 本格的にプログラミングするならローカルに環境を作るのは必須

本題:数学とアニメーション

定積分のアニメーション

  • 定積分はグラフが囲む領域の面積
  • いわゆる区分求積法:次のように定義する

\begin{align} \int_0^1 f(x) dx &= \lim_{n \to \infty} \frac{1}{n} \sum_{k=0}^{n-1} f \left( \frac{k}{n} \right), \ n = 2 &\Rightarrow \frac{1}{2} \left(f\left(\frac02\right) + f\left(\frac12\right)\right) \ n = 3 &\Rightarrow \frac{1}{3} \left(f\left(\frac03\right) + f\left(\frac13\right) + f\left(\frac23\right)\right) \end{align}

  • 右辺に注目する
    • $\frac{1}{n}$ は単なる割り算
    • $\sum_{k=0}^{n-1}$ は $n$ 項足しているだけ
    • $\lim$ は $n$ をどんどん大きくしている
  • 数値計算でやること
    • 十分大きな $n$ で右辺を計算する
    • だいたい面積が近似できることを確認する
アニメーション用の基本関数
  • 次の関数でいろいろやっている:今回詳しくは触れない
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import numpy as np
import matplotlib.pyplot as plt

def scatter_integral_body(num_data, is_left, f, param):
    # 描画領域の指定
    fig = plt.figure(figsize=(param["figsize_x"], param["figsize_y"]))
    subplot = fig.add_subplot(1, 1, 1)
    subplot.set_xlim(param["x_min"], param["x_max"])
    subplot.set_ylim(param["y_min"], param["y_max"])

    # 参考: グラフを折れ線で描く. 折れ線近似の様子を見たい場合に使う.
    #linex = np.linspace(param["x_min"], param["x_max"], num_data)
    #subplot.plot(linex, f(linex), color='blue')

    # 長方形の描画と面積の近似値計算
    area = 0
    step = (param["x_max"] - param["x_min"]) / num_data
    for x0 in np.arange(param["x_min"], param["x_max"], step):
        x = x0 if is_left else x0 + step
        rect = plt.Rectangle((x0, 0), step, f(x), alpha=param["alpha"])
        subplot.add_patch(rect)
        area += step * f(x)

    subplot.text(param["text_x"], param["text_y"], ('area = %f' % area))

    # 関数と三角関数の描画:上の supplot の処理の後に置かないと上の長方形が描かれない
    vf = np.vectorize(f)

    x_for_square = np.linspace(param["x_min"], param["x_max"], param["num_max"])
    y0 = vf(x_for_square)
    plt.plot(x_for_square, y0, color="red")
底辺と高さ 1 の直角三角形の面積
  • 底辺×高さ / 2 = 1/2
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
from ipywidgets import interact

def scatter(num_data, is_left):
    def f(x):
        return x

    param = {
        "x_min": 0.0,
        "x_max": 1.0,
        "y_min": 0.0,
        "y_max": 1.0,
        "figsize_x": 4,
        "figsize_y": 4,
        "alpha": 0.5,
        "text_x": 0.2,
        "text_y": 0.7,
        "num_max": 50
    }
    scatter_integral_body(num_data, is_left, f, param)

num_max = 50
interact(scatter, num_data=(2, num_max, 1), is_left=True)
1
2
3
4
5
6
7
interactive(children=(IntSlider(value=26, description='num_data', max=50, min=2), Checkbox(value=True, descrip…





<function __main__.scatter>
参照用

\begin{align} \int_0^1 f(x) dx &= \lim_{n \to \infty} \frac{1}{n} \sum_{k=0}^{n-1} f \left( \frac{k}{n} \right), \ n = 2 &\Rightarrow \frac{1}{2} \left(f\left(\frac02\right) + f\left(\frac12\right)\right) \ n = 3 &\Rightarrow \frac{1}{3} \left(f\left(\frac03\right) + f\left(\frac13\right) + f\left(\frac23\right)\right) \end{align}

二次関数
  • $x^2$ を $[0,2]$ で積分
  • 面積は $\int_0^2 x^2 dx = 8/3 = 2.6666...$
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
from ipywidgets import interact

def scatter(num_data, is_left):
    def f(x):
        return x**2

    param = {
        "x_min": 0.0,
        "x_max": 2.0,
        "y_min": 0.0,
        "y_max": 4.0,
        "figsize_x": 4,
        "figsize_y": 4,
        "alpha": 0.5,
        "text_x": 0.2,
        "text_y": 3.0,
        "num_max": 50
    }
    scatter_integral_body(num_data, is_left, f, param)

num_max = 50
interact(scatter, num_data=(2, num_max, 1), is_left=True)
1
2
3
4
5
6
7
interactive(children=(IntSlider(value=26, description='num_data', max=50, min=2), Checkbox(value=True, descrip…





<function __main__.scatter>
定積分の大雑把なまとめ
  • どんどん細かくしていくと、細かさに応じて近似がよくなる。
  • 近似を上げていった最果てで厳密な値が得られるとみなす。
  • 視覚的に確認すると定義の意図が見えやすくなる
  • 定義の意図がわかっていないとプログラムを書くのも難しい

1 次元の波動方程式

  • ひもの左端を揺らしたときのひもの振動(波)の様子を見る
  • 波が右端まで行くと反射するところも見られる
偏微分方程式としての波動方程式

\begin{align} u_{tt} = c^2 u_{xx}, \quad \frac{\partial^2 u}{\partial t^2} = c^2 \frac{\partial^2 u}{\partial x^2}. \end{align}

  • ここで $c$ は定数で物理的には波の速度。
  • 物理だとこれをどうやって導出するかも問われる。
  • ここではそうした議論はせず、とにかく数値的に解いてみて波を表している様子を眺める

\begin{align} \frac{\partial u}{\partial t} &= \lim_{\Delta t \to 0}\frac{u(t + \Delta t, x) - u(t,x)}{\Delta t} \ &\simeq \frac{u(t + \Delta t, x) - u(t,x)}{\Delta t} \end{align}

\begin{align} \frac{\partial^2 u}{\partial t^2} = \frac{\partial}{\partial t} \frac{\partial u}{\partial t}= \frac{u_t(t+\Delta t,x) - u_t(t,x)}{\Delta t} &\simeq \frac{\frac{u(t + \Delta t, x) - u(t,x)}{\Delta t} - \frac{u(t , x) - u(t- \Delta t,x)}{\Delta t}}{\Delta t} \end{align}

最終的に計算する式

\begin{align} u(t + \Delta t, x ) = 2 u(t,x) - u(t - \Delta t, x) + \left(\frac{c \Delta t}{\Delta x}\right)^2 \left(u(t, x + \Delta x) - 2 u(t,x) + u(t, x - \Delta x) \right). \end{align}

  • 次の時刻 $t + \Delta t$ の値を計算するのに現在時刻 $t$ とひとつ前の時刻 $t - \Delta t$ の値を使っている。
  • 最終的には四則演算だけ
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
from IPython.display import HTML
from matplotlib import animation
from tqdm import tqdm
import numpy as np
import matplotlib.pyplot as plt

lx = 1  # 計算領域の長さ
nx = 41 # 領域の分割数
xs = np.linspace(0, lx, nx)

def wave(nx):
    dx = lx / (nx - 1) # 空間方向の刻み
    nt = 500           # 計算回数
    dt = 0.01          # 時間刻み
    c = 1              # 波の速度
    f = 2.0            # 強制振動の周波数

    # 初期条件
    u0 = np.zeros(nx)

    # 結果の配列と nt, nx の次元を持つ配列で初期化
    us = np.zeros((nt, len(u0)))

    # 初期条件を結果の配列の各行にコピー
    us[:,:] = u0.copy()

    alpha = (c * dt / dx)**2

    for i in tqdm(range(1, nt-2)):
        t = i * dt
        # 左端を強制振動
        us[i, 0] = np.sin(2 * np.pi * f * t)
        us[i+1, 0] = np.sin(2 * np.pi * f * t)

        # 時間発展
        us[i+1, 1:-1] = 2 * us[i, 1:-1] - us[i-1, 1:-1] \
                        + alpha * (us[i, 2:] - 2 * us[i, 1:-1] + us[i, :-2])
        # 右端の境界値指定
        us[i+1, nx-1] = 0

    return us


### 解
us = wave(nx)

fig = plt.figure();

### グラフの軸の設定
ax = plt.axes(xlim=(0, lx), ylim=(-5, 5));
line, = ax.plot([], [], lw=2);

def animate(u):
    line.set_data(xs, u)
    return line

anim = animation.FuncAnimation(fig, animate, frames=us, interval=50)
#anim.save('07-pde_03_wave_ex01.tmp.mp4', writer="ffmpeg")
plt.close(anim._fig)
HTML(anim.to_jshtml(default_mode='reflect'))
1
100%|██████████| 497/497 [00:00<00:00, 34649.84it/s]

1 次元の拡散方程式

  • 真ん中に置いておいた物質が周囲に拡散していく様子を見る
偏微分方程式としての拡散方程式

\begin{align} \frac{\partial u}{\partial t}= \nu \frac{\partial^2 u}{\partial x^2}. \end{align}

最終的に計算する式

\begin{align} u(t+ \Delta t, x) = u(t, x) + \nu \frac{\Delta t}{(\Delta x)^2} (u(t, x + \Delta x) - 2u(t,x) + u(t, x - \Delta x)). \end{align}

  • これも四則演算だけ。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import numpy as np
import matplotlib.pyplot as plt
from IPython.display import HTML
from matplotlib import animation

lx = 2  # 計算領域の長さ
nx = 41 # 領域の分割数
xs = np.linspace(0, lx, nx)

def diffusion(nx):
    dx = lx / (nx - 1) # 空間方向の刻み
    dt = 0.001         # 時間刻み
    nt = 200           # 計算回数
    nu = 1.0           # 拡散係数

    # 初期条件:中央以外すべて 0
    u0 = np.zeros(nx)
    # 真ん中に物質を置く
    x_center = int((nx - 1) / 2)
    u0[x_center-2: x_center+2] = 1

    # 結果の配列と nt, nx の次元を持つ配列で初期化
    us = np.zeros((nt, len(u0)))

    # 初期条件を結果の配列の各行にコピー
    us[:,:] = u0.copy()

    for i in range(0, nt-1):
        us[i+1, 1:-1] = us[i, 1:-1] + nu * dt / dx**2 *  (us[i, 2:] - 2 * us[i, 1:-1] + us[i, :-2])

    return us

us = diffusion(nx)

fig = plt.figure();
#グラフの軸の設定
ax = plt.axes(xlim=(0, lx), ylim=(0, 1.2));
line, = ax.plot([], [], lw=2);

def animate(u):
    line.set_data(xs, u)
    return line

anim = animation.FuncAnimation(fig, animate, frames=us, interval=50)
#anim.save('07-pde_04_diffusion_ex01.tmp.mp4', writer="ffmpeg")
plt.close(anim._fig)
HTML(anim.to_jshtml(default_mode='reflect'))

2 次元の波動方程式

  • イメージとしては膜の振動
  • 真ん中を振動させてその波の伝播を見る
偏微分方程式としての波動方程式

\begin{align} u_{tt} = c^2 (u_{xx} + u_{yy}). \end{align}

  • ここで $c$ は定数で物理的には波の速度
  • 1 次元のときとの違いは $u_{yy}$ の追加
  • 物理的には次元に依存する議論もあってそれほど簡単ではない
最終的に計算する式

\begin{align} &u(t + \Delta t, x, y) \ &= 2 u(t,x,y) - u(t - \Delta t, x, y) \ \quad &+ \left(\frac{c \Delta t}{\Delta x}\right)^2 \left(u(t, x + \Delta x,y) - 2 u(t,x,y) + u(t, x - \Delta x,y) \right) \ \quad &+ \left(\frac{c \Delta t}{\Delta y}\right)^2 \left(u(t, x,y + \Delta y) - 2 u(t,x,y) + u(t, x,y - \Delta y) \right) \ \end{align}

  • 右辺の時刻は $t$ と $t - \Delta t$、つまり過去の時刻しか出てこない
  • 過去の時間での情報さえわかれば未来の挙動がわかる
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
from IPython.display import HTML
from matplotlib import animation
from mpl_toolkits.mplot3d import Axes3D
from tqdm import tqdm
import numpy as np
import matplotlib.pyplot as plt

lx = 1  # 計算領域の長さ
ly = 1  # 計算領域の長さ
nx = 11 # 領域の分割数
ny = 11 # 領域の分割数
nx_center = int((nx - 1) / 2)
ny_center = int((ny - 1) / 2)
xs = np.linspace(0, lx, nx)
ys = np.linspace(0, ly, ny)

x1d = np.linspace(0, lx, nx)
y1d = np.linspace(0, ly, ny)
xs, ys = np.meshgrid(x1d, y1d)

def wave(nx, ny):
    dx = lx / (nx - 1)
    dy = ly / (ny - 1)
    nt = 300           # 計算回数
    dt = 0.5 * dx * dy # 時間刻み
    c = 1              # 波の速度
    f = 2.0            # 強制振動の周波数

    # 初期条件
    u0 = np.zeros((nx, ny))

    # 結果の配列と nt, nx, ny の次元を持つ配列で初期化
    us = np.zeros((nt, nx, ny))

    # 初期条件を結果の配列の各行にコピー
    us[:,:,:] = u0.copy()

    alpha_x = (c * dt / dx)**2
    alpha_y = (c * dt / dy)**2

    for i in tqdm(range(1, nt-2)):
        t = i * dt
        # 中心を強制振動
        us[i, nx_center, ny_center] = np.sin(2 * np.pi * f * t)
        us[i+1, nx_center, ny_center] = np.sin(2 * np.pi * f * t)

        # 時間発展
        us[i+1, 1:-1, 1:-1] = 2 * us[i, 1:-1, 1:-1] - us[i-1, 1:-1, 1:-1] \
                            + alpha_x * (us[i, 2:, 1:-1] - 2 * us[i, 1:-1, 1:-1] + us[i, :-2, 1:-1]) \
                            + alpha_y * (us[i, 1:-1, 2:] - 2 * us[i, 1:-1, 1:-1] + us[i, 1:-1, :-2])
        # 境界値指定
        us[i+1, 0, :] = 0
        us[i+1, nx-1, :] = 0
        us[i+1, :, 0] = 0
        us[i+1, :, ny-1] = 0

    return us


### 解
us = wave(nx, ny)

fig = plt.figure();
ax = fig.add_subplot(111, projection='3d')
ax.set_xlim(0, lx)
ax.set_ylim(0, ly)
ax.set_zlim(-2, 2)
ax.set_xlabel('$x$')
ax.set_ylabel('$y$')
ax.set_zlabel('$u$')
surf = ax.plot_surface(xs, ys, us[0], rstride=1, cstride=1, linewidth=0, cmap='jet')

def animate(u):
    return ax.plot_surface(xs, ys, u, rstride=1, cstride=1, linewidth=0, cmap='jet')
    #surf.set_data(u)
    #return surf

anim = animation.FuncAnimation(fig, animate, frames=us, interval=50)
#anim.save('07-pde_06_wave_2dim_ex01.tmp.mp4', writer="ffmpeg")
plt.close(anim._fig)
HTML(anim.to_jshtml(default_mode='loop'))

微分方程式の大雑把なまとめ

  • (いろいろな都合によって)物理では無限に細かいところで方程式を立てている
  • そのままでは計算機に計算させられない
  • 微分係数・導関数を定義によって有限化:差と商にわける。
  • 有限に落とした部分は無限に細かくしていけば元の微分係数・導関数を近似できていると期待する

次回以降

  • 常微分方程式のところをのんびり進める
  • まずは微分方程式で何ができるのかをのんびり
  • 微分方程式で記述できる現象を説明したあと、近似計算の数理を追う
  • プログラムに落とし込む工夫を見る
  • 数値計算プログラムを大雑把に眺める
  • 講座・コンテンツ本体を眺める

質疑応答

  • 今の時点での目標が何かとか
  • こんな感じで進めてほしいとか
  • こんなネタを扱ってほしいとか

要望メモ

  • 小さな課題が欲しい。
  • 成功体験を積もう。
  • 予習の範囲を出す。
  • 式とグラフの対応。いろいろお絵描きしてみる。どうやってプログラムに落とすか確認する。

アンケート

毎回アンケートを取っています. 質問や要望がある場合もこちらにどうぞ.

アンケートは匿名なので気楽にコメントしてください. 直接返事してほしいことがあれば, メールなど適当な手段で連絡してください.

2020-04-26 課題

はじめに

  • コンテンツの案内ページ
  • GitHub へのリンク
  • 少なくとも英語・フランス語・ドイツ語・ウクライナ語・スペイン語では別行立ての式に句読点がついていました. 式に句読点がついている外国語, 特に英語の文献を探してみてください. 英語については arxiv が探しやすいでしょう. ドイツ語についてはアインシュタインの論文, フランス語では Serre の論文あたりが探しやすいだろうと思います.
  • 引き続き TeX でいろいろな式を書いてみましょう. arxiv を彷徨って格好よさそうな式を https://mathpix.com/ で TeX 化してみると楽しいかもしれません.
  • 引き続きプログラムをいろいろいじってみましょう. 例えば次のような方針があります. コンテンツからのコピペで構いません. 適切にコピペして動かすだけでも割と大変なので.
    • (numpy を使って) いろいろな関数のグラフを描いてみましょう.
    • (sympy を使って) いろいろな連立方程式を解いてみましょう.
    • いろいろな微分方程式を解いてみましょう. 実際にコンテンツでも紹介しているように, 分点を自分でも変えていじってみるとのが第一歩です.
  • (難しいのでやらなくても構いません) 近似について考えてみましょう. もとの関数 $f$ がほとんど 0 であるにも関わらず, 導関数が 0 とはかけ離れた関数を考えてみてください.
  • 近似の基準として差の絶対値の最大値, つまり $\max_x |f(x) - g(x)|$ を取ることにします. この量が小さくても, 導関数に対する $\max_x |f'(x) - g'(x)|$ が小さいとは限らない関数を具体例を作ることで示したことにあたります. エネルギーは適当な導関数によって定義されるので, 近似に関する微妙なさじ加減が少し体験できます. (エネルギーは積分が絡むので実はもう少し面倒です.)
  • 数値計算と微分方程式の近似解法についてはシンプレクティック積分法などの話題もあります.

$F(x)=0$ という関数があったとする。 これは導関数の $F'(x)$ も $F'(x)=0$ である。

自分用メモ

  • 遅延型方程式に対するコメント追加
  • 06 の introduction と overview の統合
  • 人口論の説明のブラッシュアップ
  • import に関する実演:めんどいのでローカルの Jupyter で。

解答例:忘れる前にメモしておく

句読点問題

TeX でいろいろな式を書こう

\begin{align} \int_0^\infty x^{2n} e^{-ax^2} \, dx &= \frac{(2n+1)!!}{2^{n+1}} \sqrt{\pi} a^{- n - 1/2}. \end{align}

\begin{align} \langle f, e^{-tH} g \rangle = \int_{\mathbb{R}^d} \mathbb{E}_W^x \left[ \overline{f(B_0)} g(B_t) e^{- \int_0^t V(B_s) ds} \right] dx. \end{align}

$\mathrm{R}$

いろいろなプログラムを書こう

numpy でのグラフ
1
2
3
4
5
6
7
import numpy as np
import math
x = np.linspace(0.01, 2)
print(np.linspace(0.01, 2))
print(np.log(x))

print(np.log(1))
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
[0.01       0.05061224 0.09122449 0.13183673 0.17244898 0.21306122
 0.25367347 0.29428571 0.33489796 0.3755102  0.41612245 0.45673469
 0.49734694 0.53795918 0.57857143 0.61918367 0.65979592 0.70040816
 0.74102041 0.78163265 0.8222449  0.86285714 0.90346939 0.94408163
 0.98469388 1.02530612 1.06591837 1.10653061 1.14714286 1.1877551
 1.22836735 1.26897959 1.30959184 1.35020408 1.39081633 1.43142857
 1.47204082 1.51265306 1.55326531 1.59387755 1.6344898  1.67510204
 1.71571429 1.75632653 1.79693878 1.83755102 1.87816327 1.91877551
 1.95938776 2.        ]
[-4.60517019 -2.98356174 -2.39443189 -2.02619098 -1.75765386 -1.54617572
 -1.37170739 -1.22320417 -1.09392939 -0.97946963 -0.87677571 -0.7836526
 -0.69846743 -0.61997259 -0.54719327 -0.47935332 -0.41582471 -0.35609202
 -0.29972711 -0.2463704  -0.195717   -0.14750614 -0.10151305 -0.05754264
 -0.01542447  0.02499122  0.06383674  0.10122955  0.13727438  0.17206506
  0.20568593  0.23821311  0.26971551  0.30025575  0.32989086  0.35867295
  0.38664975  0.4138651   0.44035936  0.46616976  0.4913307   0.51587408
  0.53982949  0.56322443  0.58608454  0.60843372  0.63029431  0.65168723
  0.67263205  0.69314718]
0.0
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0.01, 2)  # x を 0 にできない
y = np.log(x)  # 自然対数

plt.plot(x, y)

plt.xlabel("x", size=20)
plt.ylabel("y", size=14)
plt.grid()

plt.show()
1
2
3
4
5
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 2)  # 0 を含めるとエラー
y = np.log(x)  # 自然対数
1
2
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:5: RuntimeWarning: divide by zero encountered in log
  """
sympy での連立方程式

実際に解があるか目で見て確かめる。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-2, 2, 100)  # x を 0 にできない
y1 = x**2 - 1
y2 = x
plt.plot(x, y1, label="x^2 - 1")
plt.plot(x, y2, label="x")
plt.legend()
plt.show()
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
from sympy import *
#from sympy.plotting import plot
from IPython.display import display

def custom_latex_printer(expr, **options):
    from IPython.display import Math, HTML
    from google.colab.output._publish import javascript
    url = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_CHTML"
    javascript(content="""window.MathJax = {
        tex2jax: {
            inlineMath: [ ['$','$'] ],
            processEscapes: true
        }
        };""")
    javascript(url=url)
    return latex(expr, **options)

init_printing(use_latex="mathjax", latex_printer=custom_latex_printer)

x = Symbol('x')
expr1 = x**2 - 1
expr2 = x
sol = solve(expr1 - expr2, x) # 「引き算 = 0」にすれば連立方程式を解いたことになる
display(sol)
1
<IPython.core.display.Javascript object>

$$\left [ \frac{1}{2} + \frac{\sqrt{5}}{2}, \quad - \frac{\sqrt{5}}{2} + \frac{1}{2}\right ]$$

微分方程式
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import numpy as np
import matplotlib.pyplot as plt
from IPython.display import HTML
from matplotlib import animation

lx = 2  # 計算領域の長さ
nx = 41 # 領域の分割数
xs = np.linspace(0, lx, nx)

def diffusion(nx):
    dx = lx / (nx - 1) # 空間方向の刻み
    dt = 0.001         # 時間刻み
    nt = 200           # 計算回数
    nu = 1.0           # 拡散係数

    # 初期条件:中央以外すべて 0
    u0 = np.zeros(nx)
    # 真ん中に物質を置く
    x_center = int((nx - 1) / 2)
    u0[x_center-2: x_center+2] = 1

    # 結果の配列と nt, nx の次元を持つ配列で初期化
    us = np.zeros((nt, len(u0)))

    # 初期条件を結果の配列の各行にコピー
    us[:,:] = u0.copy()

    for i in range(0, nt-1):
        us[i+1, 1:-1] = us[i, 1:-1] + nu * dt / dx**2 *  (us[i, 2:] - 2 * us[i, 1:-1] + us[i, :-2])

    return us

us = diffusion(nx)

fig = plt.figure()

ax = plt.axes(xlim=(0, lx), ylim=(0, 1.2));
line, = ax.plot([], [], lw=2)

def animate(u):
    line.set_data(xs, u)
    return line

anim = animation.FuncAnimation(fig, animate, frames=us, interval=50)
plt.close(anim._fig)
HTML(anim.to_jshtml(default_mode='reflect'))

関数の近似

十分大きな $n$ に対する次の関数があります。 \begin{align} f(x) &= \frac{1}{n} \sin (e^n x), \ f'(x) &= \frac{e^n}{n} \cos (e^n x). \end{align} グラフを描いてみましょう。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import numpy as np
import matplotlib.pyplot as plt

n = 10
x = np.linspace(0, 2 * np.pi, 100)
y1 = np.sin(np.exp(n) * x) / n
y2 = np.exp(n) * np.cos(np.exp(n) * x) / n
plt.plot(x, y1, label="$f$")
plt.plot(x, y2, label="$df/dx$")
plt.legend()
plt.show()
コメント

これは次のように思ってください。

  • 関数 $f_n$ は元の関数 $f_0 = 0$ を(最大値ノルムで)よく近似できている。
  • 関数 $f'_n$ は元の関数の導関数 $f'_0 = 0$ をよく近似できていない.

関数の近似はいろいろ難しいところがあって, それだけで論文になるレベルです. 同じ事情はベクトルの近似にもあります. いま流行りの統計学の応用としての自然言語処理でも, 言語の近さを量的にどう判定するかという問題があり, これはまさに言葉をどうベクトルで表現するか, 表したベクトルの近さを何でどう判定するかが問われています. 例えば, よくある「変換候補」遊びは, ある単語を打ち込んだとき, その人の入力の癖という観点から次にどのような語が来るか (どのような語が近いか) を統計的に判定する自然言語処理の事情が絡んでいます. このあたり, 既に「身近」なテーマで, そして身近なことは本当に難しいのでちょっと考えた程度でわかるような話ではありません. 何せ十分な精度で使いやすくかつ役に立ってもらわないといけないので.

2020-05-03 課題

  • コンテンツの案内ページ
  • GitHub へのリンク
  • matplotlib の公式ドキュメントを見ていろいろ遊んでみてください。例えば次のようなことを試してみてください。
    • 線の色を変えてみる。
    • 点にマーカーをつける。
    • 公式のサンプルやチュートリアルを試してみる。
  • 引き続き TeX でいろいろな式を書いてみましょう。式が書けると数学系のコミュニケーションがだいぶ楽になります。
  • 引き続きプログラムをいろいろいじってみましょう. 例えば次のような方針があります. コンテンツからのコピペで構いません. 適切にコピペして動かすだけでも割と大変なので.
    • (numpy を使って) いろいろな関数のグラフを描いてみましょう.
    • (sympy を使って) いろいろな連立方程式を解いてみましょう. グラフを描くのもおすすめです.
    • いろいろな微分方程式を解いてみましょう. 実際にコンテンツでも紹介しているように, 分点を自分でも変えていじってみるとのが第一歩です.

自分用メモ

  • 遅延型方程式に対するコメント追加
  • import に関する実演
  • Jupyter (IPython)でのはまりどころ解説を作ろう
    • いったん変数を作ると他のセルでも読み込める(読み込めてしまう)
    • 「セルを上から順に読み込まないと動かない」問題の原因
    • カーネル再起動まで変数は残り続ける

解答例

プログラムのコピペの功罪

  • プログラムをコピペしているだけだと自力で組み上げる力がつかない
  • 私の作るコンテンツは基本的に「世のいろいろなコンテンツのギャップを埋める」ことを目的にする
    • 大きな展望を見えるようにする
    • 中規模の目標を作る
  • 初学の段階で小さいプログラムしか書けないのもつまらない
  • 世にある「まとも」なプログラム(numpy などのライブラリ)は規模が大きいので読む・勉強するのが大変
  • どのくらいの規模のプログラムでどのくらいのモノが作れるのかを見たい
  • コピペであってもプログラムが動けばそれだけで面白い(こともある)
  • ある程度先まで見通せないと面白さも見えず、やる気が続かない
  • 程々の規模のプログラムをコピペして動かしてみて様子を掴もう

matplotlib

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import numpy as np
import matplotlib.pyplot as plt

def koch_snowflake(order, scale=10):
    """
    Return two lists x, y of point coordinates of the Koch snowflake.

    Arguments
    ---------
    order : int
        The recursion depth.
    scale : float
        The extent of the snowflake (edge length of the base triangle).
    """
    def _koch_snowflake_complex(order):
        if order == 0:
            # initial triangle
            angles = np.array([0, 120, 240]) + 90
            return scale / np.sqrt(3) * np.exp(np.deg2rad(angles) * 1j)
        else:
            ZR = 0.5 - 0.5j * np.sqrt(3) / 3

            p1 = _koch_snowflake_complex(order - 1)  # start points
            p2 = np.roll(p1, shift=-1)  # end points
            dp = p2 - p1  # connection vectors

            new_points = np.empty(len(p1) * 4, dtype=np.complex128)
            new_points[::4] = p1
            new_points[1::4] = p1 + dp / 3
            new_points[2::4] = p1 + dp * ZR
            new_points[3::4] = p1 + dp / 3 * 2
            return new_points

    points = _koch_snowflake_complex(order)
    x, y = points.real, points.imag
    return x, y

x, y = koch_snowflake(order=5)

plt.figure(figsize=(8, 8))
plt.axis('equal')
plt.fill(x, y)
plt.show()
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
import numpy as np
import matplotlib.pyplot as plt

plt.rcParams['legend.fontsize'] = 10

fig = plt.figure()
ax = fig.gca(projection='3d')


theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)
z = np.linspace(-2, 2, 100)
r = z**2 + 1
x = r * np.sin(theta)
y = r * np.cos(theta)

ax.plot(x, y, z, label='parametric curve')
ax.legend()

plt.show()

TeX でいろいろな式を書こう

Poisson 積分

\begin{align} u\left(z_{0}\right) &= \frac{1}{2 \pi} \int_{0}^{2 \pi} u\left(e^{i \psi}\right) \frac{1-\left|z_{0}\right|^{2}}{| z_{0}-e^{\left.j \phi\right|^{2}}} d \psi, \ u(x, y) &= \frac{1}{2 \pi} \int_{0}^{2 \pi} u(a \cos \phi, a \sin \phi) \frac{a^{2}-R^{2}}{a^{2}+R^{2}-2 a R \cos (\theta-\phi)} d \phi, \ u(x, y, z)&=\frac{1}{4 \pi a} \int_{S} u \frac{a^{2}-R^{2}}{\left(a^{2}+R^{2}-2 a R \cos \theta\right)^{3 / 2}} d S. \end{align}

いろいろなプログラムを書こう

numpy でのグラフ
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-np.pi / 4, np.pi / 4)
plt.plot(x, np.sin(4 * x), label="sin 4x")
plt.plot(x, np.cos(4 * x), label="cos 4x")
plt.plot(x, np.tan(x), label="tan x")

plt.xlabel("x", size=20)
plt.ylabel("y", size=14)
plt.grid()
plt.legend()

plt.show()
sympy
  • Colab 上でもローカルの Jupyter でも動くようにしたい。
  • $n=-1$ の場合分けも勝手にやってくれてすごい。
1
2
3
4
from IPython.display import Math, HTML
def load_mathjax_in_cell_output():
    display(HTML("<script src='https://www.gstatic.com/external_hosted/mathjax/latest/MathJax.js?config=default'></script>"))
get_ipython().events.register('pre_run_cell', load_mathjax_in_cell_output)
1
2
3
4
5
x,n = symbols('x,n')

int = Integral(x**n, (x, 0, x))
print("積分それ自体を表示できる")
display(int)
1
2
3
4
5
積分それ自体を表示できる



<IPython.core.display.Javascript object>

$$\int_{0}^{x} x^{n}\, dx$$

1
2
print("単純な計算結果:場合分けまでしてくれるし、0 での無限大もそう書いてくれる")
display(int.doit())
1
2
3
4
5
単純な計算結果:場合分けまでしてくれるし、0 での無限大もそう書いてくれる



<IPython.core.display.Javascript object>

$$\begin{cases} \log{\left (x \right )} + \infty & \text{for}\: n = -1 \- \frac{0^{n + 1}}{n + 1} + \frac{x^{n + 1}}{n + 1} & \text{otherwise} \end{cases}$$

1
2
print("simplify() で 0 を消せる")
display(simplify(int.doit()))
1
2
3
4
5
simplify()  0 を消せる



<IPython.core.display.Javascript object>

$$\begin{cases} \log{\left (x \right )} + \infty & \text{for}\: n = -1 \\frac{x^{n + 1}}{n + 1} & \text{otherwise} \end{cases}$$

1
2
3
4
from IPython.display import Math, HTML
def load_mathjax_in_cell_output():
    display(HTML("<script src='https://www.gstatic.com/external_hosted/mathjax/latest/MathJax.js?config=default'></script>"))
get_ipython().events.register('pre_run_cell', load_mathjax_in_cell_output)
微分方程式
  • フィッツヒュー・南雲方程式
    • ホジキン-ハクスレー理論で出てきたモデルの簡略化
    • ヤリイカの巨大神経細胞軸索を用いた研究をもとに定式化した神経興奮に関する基礎理論 (Journal of Physiology 117(1952)500-ほか)
    • この業績で 1963 年にノーベル賞(生理学医学賞)を受賞

\begin{align} y_{t}&=c\left(y-\frac{y^{3}}{3}-x+I(t)\right),\x_{t}&=y-bx+a. \end{align}

  • $I$ は時間の関数で構わないが、以下のシミュレーションでは定数にしている。
    • $I$ が 0.34 以上かどうかで解のふるまいが定性的に変わる。
    • 力学系の話。
  • Colab 上で動画を表示させるところまでできなかったので作った動画は YouTube で:Rust 版動画
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
from IPython.display import HTML
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import scipy.integrate as integrate

I = 0.34 #external stimulus
a = 0.7
b = 0.8
c = 10

def FHN(state, t):
    """
    FitzHugh-Nagumo Equations
    u : the membrane potential
    v : a recovery variable
    """
    u, v = state
    dot_u = c * (-v + u - pow(u,3)/3 + I)
    dot_v = u - b * v + a
    return dot_u, dot_v

#initial state
u0 = 2.0
v0 = 1.0

fig = plt.figure()
t = np.arange(0.0, 10, 0.01)
len_t = len(t)
dt = 5 #time steps

#animationの1step
def update(i):
    global y, y0

    #y0の初期値の設定
    if i ==0:
        y0 = [u0, v0]

    plt.cla() #現在描写されているグラフを消去

    #微分方程式を解く
    y = integrate.odeint(FHN, y0, t)

    #1Step(=dt)後のyの値を次のステップでのy0の値に更新する
    y0 = (y[dt,0], y[dt,1])

    #配列としてu,vを取得
    u = y[:,0]
    v = y[:,1]

    #描画
    plt.plot(t, u, label="u : membrane potential", color="#ff7f0e")
    plt.plot(t, v, label="v : recovery variable", color="#1f77b4")
    plt.plot(t[len_t-1], u[len_t-1],'o--', color="#ff7f0e") #uのmarker
    plt.plot(t[len_t-1], v[len_t-1],'o--', color="#1f77b4") #vのmarker
    plt.title("Membrane Potential / Volt")
    plt.grid()
    plt.legend(bbox_to_anchor=(0, 1),
               loc='upper left',
               borderaxespad=0)

    return (u, v)

anim = animation.FuncAnimation(fig, update, interval=100,
                              frames=300)
plt.close(anim._fig)
HTML(anim.to_jshtml(default_mode='reflect'))

質問メモ

  • numpy:モジュール名と関数名を「.」でつなぐ np.array() 関数
  • クラスとオブジェクトの話。

シューティングゲーム - 敵の弾(概念):クラス:弾がどこにあるか x,y - 具体的に画面に現れる弾: x=1, y=1

1
2
3
import numpy as np
print(type(np.array))
#print(type(np.array()))
1
<class 'builtin_function_or_method'>
1
2
from numpy import *
print(type(array))
1
<class 'builtin_function_or_method'>
1
2
a = [1,2]
print(len(a))

2020-05-10 課題

  • コンテンツの案内ページ
  • GitHub へのリンク
  • 曲線を線分で近似できる気分を自分なりに説明してみてください。
    • 手書きで絵を描くだけでも構いません。
    • 一定のルールにしたがって描かれた曲線を適当な近似的ルールで描くのがプログラミングで描く曲線です。
  • 「自分でお絵かきできるようになろう」講座なので、お絵描き用ライブラリに慣れ親しむのが大事です。そこで matplotlib の公式ドキュメントを見ていろいろ遊んでみてください。例えば次のようなことを試してみてください。
    • 線の色を変えてみる。
    • 点にマーカーをつける。
    • 公式のサンプルやチュートリアルを試してみる。
    • 公式サンプル
    • これも公式:サンプルコードもある。
  • 引き続き TeX でいろいろな式を書いてみましょう。式が書けると数学系のコミュニケーションがだいぶ楽になります。
  • 引き続きプログラムをいろいろいじってみましょう. 例えば次のような方針があります. コンテンツからのコピペで構いません. 適切にコピペして動かすだけでも割と大変なので.
    • (numpy を使って) いろいろな関数のグラフを描いてみましょう.
    • (sympy を使って) いろいろな連立方程式を解いてみましょう. グラフを描くのもおすすめです.
    • いろいろな微分方程式を解いてみましょう. 実際にコンテンツでも紹介しているように, 分点を自分でも変えていじってみるとのが第一歩です.

自分用メモ

  • 常微分方程式で漸化式から微分方程式に流れる部分の書き直し
  • 数値計算に関わるクラス・オブジェクトの説明
    • まずは辞書・構造体の拡大版として導入するか?
    • 変な誤解を生まないような書き方を考える
  • 遅延型方程式に対するコメント追加
  • import に関する実演
  • matplotlib 回では実際に matplotlib のチュートリアルを読もう
    • 公式情報に触れる重要性
    • 古い情報が古いと書いてあったりする:たとえば pylab
    • Gallery
      • 見ていて面白い
      • 「どこをいじるとどう変わるか」が視覚的にわかる
      • 公式情報なのできちんとアップデートしてくれている(はず)
      • 公式情報にソースがあるので自分でいろいろ書き換えていて破滅したとき、必ずオリジナルを復元できる
  • Jupyter (IPython)でのはまりどころ解説を作ろう
    • いったん変数を作ると他のセルでも読み込める(読み込めてしまう)
    • 「セルを上から順に読み込まないと動かない」問題の原因
    • カーネル再起動まで変数は残り続ける

オブジェクトについて

今日は具体的なプログラムというより、今日のメインの話とも少し関係する形でオブジェクトについて少し眺める機会にする。

  • オブジェクト指向のオブジェクトの話ではない。
  • 必ずしもいつもかっちりした定義のもとに議論されているわけでもない。
  • 各プログラミング言語ごとの用語の事情もある。
第一級のオブジェクト

第一級オブジェクト(ファーストクラスオブジェクト、first-class object)は、あるプログラミング言語において、たとえば生成、代入、演算、(引数・戻り値としての)受け渡しといったその言語における基本的な操作を制限なしに使用できる対象のことである。

問題になる例:言語によっては関数が第一級のオブジェクトになる。(最近の言語は割とこの傾向があるように思う。) 関数が第一級のオブジェクトの言語では「関数の関数」みたいな概念が考えられる。 高階関数と呼ばれる。

「関数の関数」として python の map を紹介しておく。

python #リスト `lst1` の要素を二倍する lst1 = [1, 2, 3, 4] lst2 = [] for a in lst1: lst2.append(a*2) print(lst2)

1
  [2, 4, 6, 8]

```python #次のように map で書ける def prod2(a): return a*2

lst1 = [1, 2, 3, 4] lst2 = list(map(prod2, lst1)) #map はイテレーターを返すので list() でリスト化する print(lst2) ```

1
  [2, 4, 6, 8]

python #参考:ラムダ式 lst1 = [1,2,3,4] lst2 = list(map(lambda x: x*2, lst1)) print(lst2)

1
  [2, 4, 6, 8]

python #参考:リスト内法表記 lst1 = [1,2,3,4] lst2 = [a*2 for a in lst1] print(lst2)

1
  [2, 4, 6, 8]

```python lst1 = [1,2,3,4] lst2 = []

lst3 = [1,2,3,4] for a in lst3: lst2.append(a*2) print(lst2) ```

1
  [2, 4, 6, 8]

```python lst1 = [1,2,3,4] lst2 = []

lst3 = [1,2,3,4]

for a in lst3: lst2.append(a*2) print("") print("")

print(lst2) ```

1
2
3
4
    File "<ipython-input-9-2e52d339fe66>", line 6
      lst2.append(a*2)
         ^
  IndentationError: expected an indented block
なぜ(Python で)map の返り値がイテレーターか
  • 巨大なリストを処理する場合、リストが返るとメモリを大量に消費するから。
  • この手の話をきちんと考えるにはコンピューターアーキテクチャなり、データ構造なり、プログラミング言語に関する諸々の知識がいる(のでその辺のプログラミング言語入門みたいな本ではふつう出てこない)。
  • この手の「入門」は大学の情報科学系の入門書にはきちんと書いてある。
オブジェクトとインスタンス
オブジェクト

だいたい次のような性質を持っています。 - 何らかの型がある。 - 変数に代入できる。 - 関数(メソッド)の引数にできる。 - 関数(メソッド)の戻り値にできる。 - それ自体が式であり、任意の式の一部になる。

インスタンス

これはオブジェクト指向だけの概念です。クラス(プロトタイプベースの場合はプロトタイプとなるオブジェクトになりますが、以下クラスとまとめて考えます)はオブジェクトの雛形です。その雛形から実際のデータをもつオブジェクトにすることを実体化(インスタンス化)と言い、そのオブジェクトはそのクラスのインスタンスと言われます。

python import matplotlib.pyplot as plt fig = plt.figure() #a = A.new()

関数とメソッド

言語によっていろいろありはする。

  • サブルーチン
    • 関数、手続き
    • 何らかの処理をまとめたモノ
    • 数学の関数とは必ずしも関係ない
  • メソッド:メソッド (method) あるいは メンバー関数 (-かんすう, member function) とはオブジェクト指向プログラミング言語において、あるクラスないしインスタンスに所属するサブルーチンを指す。

第一級関数(だいいっきゅうかんすう、英: first-class function、ファーストクラスファンクション)とは、関数を第一級オブジェクトとして扱うことのできるプログラミング言語の性質、またはそのような関数のことである。

```python #値を返す「関数」 def f(): return 1

#値を返さない「関数」 def g(): print(1) g() ```

1
  1

```python class TestClass: x = "変数1"

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
  def __init__(self, y):
      self.y = y

  def test_method1(self):
      print(self.x)

  def test_method2(self, arg1):
      print("引数1:" + arg1)

  def gety(self):
      return self.y

a = TestClass("y") print(a.gety())

b = TestClass("b") print(b.gety())

a.test_method1() b.test_method1() ```

1
2
3
4
  y
  b
  変数1
  変数1

解答例

matplotlib

TeX でいろいろな式を書こう

python def f(): return {"a": "a"} print(f().keys())

1
  dict_keys(['a'])

いろいろなプログラムを書こう

numpy でのグラフ
sympy

python #colab の場合 from IPython.display import Math, HTML def load_mathjax_in_cell_output(): display(HTML("<script src='https://www.gstatic.com/external_hosted/mathjax/latest/MathJax.js?config=default'></script>")) get_ipython().events.register('pre_run_cell', load_mathjax_in_cell_output)

微分方程式

2020-05-17 課題

はじめに

  • コンテンツの案内ページ
  • GitHub へのリンク
  • 前回使った ipynb のプログラムを実際に実行してみて、実数の数値計算上で起こる問題を実感してみてください。
  • 「自分でお絵かきできるようになろう」講座なので、お絵描き用ライブラリに慣れ親しむのが大事です。そこで matplotlib の公式ドキュメントを見ていろいろ遊んでみてください。例えば次のようなことを試してみてください。
    • 線の色を変えてみる。
    • 点にマーカーをつける。
    • 公式のサンプルやチュートリアルを試してみる。
    • 公式サンプル
    • これも公式:サンプルコードもある。
  • 引き続き TeX でいろいろな式を書いてみましょう。式が書けると数学系のコミュニケーションがだいぶ楽になります。

自分用メモ

  • 常微分方程式で漸化式から微分方程式に流れる部分の書き直し
  • 勉強のおすすめ:AtCoder はどうか?C++の解説もあるし、仕事・評価にも割と直結するし、具体的な問題つきで勉強できる。
    • https://atcoder.jp/contests/apg4b
      • C++のコードをPythonで書き直してみるだけでもかなりの勉強になるはず
    • Python によるアルゴリズム https://qiita.com/cabernet_rock/items/cdd12b07d213b67d0530
  • 数値計算に関わるクラス・オブジェクトの説明
    • まずは辞書・構造体の拡大版として導入するか?
    • 変な誤解を生まないような書き方を考える
  • 遅延型方程式に対するコメント追加
  • import に関する実演
  • matplotlib のチュートリアルを読もうの会
  • matplotlib 回では実際に matplotlib のチュートリアルを読もう
    • 公式情報に触れる重要性
    • 古い情報が古いと書いてあったりする:たとえば pylab
    • Gallery
      • 見ていて面白い
      • 「どこをいじるとどう変わるか」が視覚的にわかる
      • 公式情報なのできちんとアップデートしてくれている(はず)
      • 公式情報にソースがあるので自分でいろいろ書き換えていて破滅したとき、必ずオリジナルを復元できる
  • Jupyter (IPython)でのはまりどころ解説を作ろう
    • いったん変数を作ると他のセルでも読み込める(読み込めてしまう)
    • 「セルを上から順に読み込まないと動かない」問題の原因
    • カーネル再起動まで変数は残り続ける

プログラミングの一般論

イテレーターとジェネレーター

  • 参考
  • この間イテレーターとジェネレーターを勘違いして話してしまったのでやり直し
基本
  • イテレータ: 要素を反復して取り出すことのできるインタフェース
    • 例:リスト、配列、タプル、辞書など
    • 「要素をたくさん持っているデータ構造」
  • ジェネレータ: イテレータの一種であり、1要素を取り出そうとする度に処理を行い、要素を生成する。Pythonではyield文を使った実装を指すことが多い
  • ジェネレーターが必要になる理由
    • とりあえずリストを想定する
    • 要素すべてをあらかじめ計算しておく/取得してくるのが大変
      • 例:何十GBもある巨大なイテレータはメモリにのせられない
    • HDD・SSD に載せるのも大変(速度なり何なりいろいろ)
    • ふつう 1 つ 1 つの要素自体は小さい
    • 要素を 1 つ 1 つ生成すればメモリをそんなに食わない
    • 1 つ 1 つ作ろう
1 つ 1 つ作る?
  • range がイメージしやすそうな気がする
  • 一度にドカッとリストを作る必要はなく、1 つ 1 つの整数を都度作ってくればいい
1
2
3
4
xs = range(0, 10)
print(type(xs))
for x in xs:
    print(x)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
<class 'range'>
0
1
2
3
4
5
6
7
8
9
  • イテレータ(リスト)の要素数が $10^{1000000}$ くらいになるとそもそもリストが作れない
  • 一気に作らずに 1 つずつ要素を生成すれば問題なく処理は回る
    • $10^{1000000}$ 個の要素を処理しないといけない点で時間自体はどうしてもかかる
    • これは本質的な問題で、ジェネレーターを使う・使わないに関係ない
    • メモリに載るか載らないかではなく処理の所要時間の問題
Python のジェネレーターの簡単な例
  • yield を使ってみる
1
2
3
4
5
6
7
def my_generator():
    yield 1
    yield 2
    yield 3

gen = my_generator()
print(type(gen))
1
<class 'generator'>
1
2
3
4
5
6
7
8
9
def my_generator():
    yield 1
    yield 2
    yield 3

gen = my_generator()
print(gen.__next__())  # 1
print(gen.__next__())  # 2
print(gen.__next__())  # 3
1
2
3
1
2
3
  • 4 回呼ぶと怒られる
  • for で呼び出すと怒られるところでループを止めてくれる
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
"""4 回呼ぶと怒られる"""
def my_generator():
    yield 1
    yield 2
    yield 3

gen = my_generator()
gen.__next__()  # 1
gen.__next__()  # 2
gen.__next__()  # 3
gen.__next__()  # StopIteration
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
---------------------------------------------------------------------------

StopIteration                             Traceback (most recent call last)

<ipython-input-1-f379ec6e011a> in <module>()
      8 gen.__next__()  # 2
      9 gen.__next__()  # 3
---> 10 gen.__next__()  # StopIteration


StopIteration:
1
2
3
4
5
6
7
8
def my_generator():
    yield 1
    yield 2
    yield 3

gen = my_generator()
for a in gen:
    print(a)
1
2
3
1
2
3

クラス

  • 念頭に置くのは Python のクラス・オブジェクト(オブジェクト指向の意味のオブジェクト)
  • データとそれを処理する「関数」のペア
  • まずは「辞書」または「リスト」の拡張だと思おう
  • ある学生 s のテストの点に関していろいろ統計的な処理をしたい
  • 学生 s のテストの点を次のようにリストで持つ
    • 国語・数学・英・理科・社会の順に点数を並べるとする
    • 平均点を計算したい
1
2
3
4
5
s_scores = [10, 20, 30, 40, 50] # 国語・数学・英・理科・社会の順
def calc_mean(s_scores):
    return sum(s_scores) / len(s_scores)
s_mean = calc_mean(s_scores)
print(s_mean)
1
30.0
  • リストだと何も情報がなくて、何番目が何の科目だったか覚えていられない
  • コメントもあるが、何かの都合で仕様が変わったりしたらどうする?
  • 具体的に名前で持たせればいい:辞書を使おう
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
s_scores = {
    "ja": 10,
    "math": 20,
    "eng": 30,
    "science": 40,
    "society": 50
}

def calc_mean(s_scores):
    s_sum = sum([v for v in s_scores.values()])
    return s_sum / len(s_scores)

s_mean = calc_mean(s_scores)
print(s_mean)
1
30.0
  • 関数 calc_mean は(本質的には)成績の持たせ方と連動した関数である
  • 値と処理をバラバラにしないでワンセットにしたい:クラス化
    • いまは単なる平均だからご利益が何も感じられない
    • もっと複雑なことを考えると「ワンセット」にご利益が出てくる
    • それこそ「辞書のクラス・メソッド」などを考えてみよう
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
class Score():
    def __init__(self, ja, math, eng, sci, soc):
        self.ja = ja
        self.math = math
        self.eng = eng
        self.sci = sci
        self.soc = soc

    def calc_mean(self):
        return (self.ja + self.math + self.eng + self.sci + self.soc) / 5

s = Score(10, 20, 30, 40, 50)
print(s.calc_mean())
1
30.0
  • ほかの生徒の成績も考えたいとき、簡単に各生徒用のオブジェクトが作れる
    • オブジェクトは s1s2
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
class Score():
    def __init__(self, ja, math, eng, sci, soc):
        self.ja = ja
        self.math = math
        self.eng = eng
        self.sci = sci
        self.soc = soc

    def calc_mean(self):
        return (self.ja + self.math + self.eng + self.sci + self.soc) / 5

s1 = Score(10, 20, 30, 40, 50)
print(s1.calc_mean())

s2 = Score(1, 2, 3, 4, 5)
print(s2.calc_mean())
1
2
30.0
3.0

アルゴリズムとデータ構造

アルゴリズムとデータ構造でプログラミングを勉強する

  • https://atcoder.jp/?lang=ja
    • プログラミングのコンテストサイト
    • 競技プログラミング
  • C++ の勉強も兼ねた勉強用ページ https://atcoder.jp/contests/APG4b
  • 初心者向け練習問題 https://atcoder.jp/contests/abs
    • 探せば他にも練習問題特集はある

いいところ

  • 簡単な問題なら 10 行もあれば書ききれる
  • 自分で何か作ったりしなくても問題演習という形でプログラミングに触れられる
  • 基本的には実際のプログラミングに即役立つタイプの問題
  • ランキング上位者は本当にプログラミングで食っていけるレベルの腕でもある
  • 良くも悪くも、コンピューターの基礎みたいな部分に触れざるを得ない面がある
    • リストと配列は何が違うのか?
    • どういうときにどちらを使えばいいのか?
    • メモリ上のデータの配置が違う
    • 「低レイヤー」の話とも向き合う必要が出る可能性

自分に合った勉強法・勉強内容を探そう

  • 最終的な目的・目標と勉強に対する最善のアプローチが一致するとは限らない
  • 私の場合は物理・数学系だと勉強しやすかったが、皆が皆そうというわけでもない
  • 課題を競プロから出してみて様子を見るか?

2020-05-31 課題

はじめに

  • コンテンツの案内ページ
  • GitHub へのリンク
  • 01-01 ipynb のプログラムを実際に実行してみて、実数の数値計算上で起こる問題を実感してみてください。
  • 「自分でお絵かきできるようになろう」講座なので、お絵描き用ライブラリに慣れ親しむのが大事です。そこで matplotlib の公式ドキュメントを見ていろいろ遊んでみてください。例えば次のようなことを試してみてください。
    • 線の色を変えてみる。
    • 点にマーカーをつける。
    • 公式のサンプルやチュートリアルを試してみる。
    • 公式サンプル
    • これも公式:サンプルコードもある。
  • 引き続き TeX でいろいろな式を書いてみましょう。式が書けると数学系のコミュニケーションがだいぶ楽になります。
  • 実際に競プロの問題をいくつか解いてみましょう。例えばここのページを一通り眺めてみてください。Pythonで10問解いてみた記事もあるので参考にしてください。

自分用メモ

  • 常微分方程式で漸化式から微分方程式に流れる部分の書き直し
  • 勉強のおすすめ:AtCoder はどうか?C++の解説もあるし、仕事・評価にも割と直結するし、具体的な問題つきで勉強できる。
    • https://atcoder.jp/contests/apg4b
      • C++のコードをPythonで書き直してみるだけでもかなりの勉強になるはず
    • Python によるアルゴリズム https://qiita.com/cabernet_rock/items/cdd12b07d213b67d0530
  • 文と式の説明
  • IT 基礎知識みたいなやつ
  • 数値計算に関わるクラス・オブジェクトの説明
    • まずは辞書・構造体の拡大版として導入するか?
    • 変な誤解を生まないような書き方を考える
  • 遅延型方程式に対するコメント追加
  • import に関する実演
  • matplotlib のチュートリアルを読もうの会
  • matplotlib 回では実際に matplotlib のチュートリアルを読もう
    • 公式情報に触れる重要性
    • 古い情報が古いと書いてあったりする:たとえば pylab
    • Gallery
      • 見ていて面白い
      • 「どこをいじるとどう変わるか」が視覚的にわかる
      • 公式情報なのできちんとアップデートしてくれている(はず)
      • 公式情報にソースがあるので自分でいろいろ書き換えていて破滅したとき、必ずオリジナルを復元できる
  • Jupyter (IPython)でのはまりどころ解説を作ろう
    • いったん変数を作ると他のセルでも読み込める(読み込めてしまう)
    • 「セルを上から順に読み込まないと動かない」問題の原因
    • カーネル再起動まで変数は残り続ける

競プロを 2 題解いてみる

  • https://qiita.com/KoyanagiHitoshi/items/c5e82841b8d0f750851d の最初の2題

ABC 086 A - Product

  • 標準入力から取るのが本筋(input
  • 面倒なのでここでは入力部分をハードコードする

```python input_str = "1 3"

print("input_str") print(input_str)

print("======") print(input_str.split())

print("======") print(map(int, input_str.split()))

print("======") print(list(map(int, input_str.split())))

a, b = map(int, input_str.split()) print(a) print(b)

######################## a, b = map(int, input_str.split()) if a*b % 2 == 0: print("Even") else: print("Odd") ```

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
  input_str
  1 3
  ======
  ['1', '3']
  ======
  <map object at 0x7f537ad30c88>
  ======
  [1, 3]
  1
  3
  Odd

python s = "1" print(s) print(type(s)) print(int(s)) print(type(int(s)))

1
2
3
4
  1
  <class 'str'>
  1
  <class 'int'>
map オブジェクトはイテレーター

python input_str = "1 3" a = map(int, input_str.split()) print(a.__next__()) print(a.__next__()) print(a.__next__())

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
  1
  3



  ---------------------------------------------------------------------------

  StopIteration                             Traceback (most recent call last)

  <ipython-input-3-c797e216c7f4> in <module>()
        3 print(a.__next__())
        4 print(a.__next__())
  ----> 5 print(a.__next__())


  StopIteration:
参考:標準入力
  • 果てしなくめんどい
    • 低レイヤーの話に突撃する:コンソール・ターミナル、リダイレクトなどなど
    • 「特殊 ( スペシャル ) ファイル」
    • 「ソケット」
      • http://e-words.jp/w/%E3%82%BD%E3%82%B1%E3%83%83%E3%83%88.html
      • 特定の通信相手(IPネットワーク上の場合はIPアドレスとポートの組み合わせ)と紐付いた通信端点をプログラム上に生成し、これを通じてコネクションの確立やデータの送受信、切断などの処理を行う。具体的な通信方式や通信相手の指定方式が複数用意されており、同じコンピュータ上の他のプロセスとも、TCP/IPなどを利用して他のコンピュータ上のプログラムとも通信できる。
  • 標準入力について参考ページ
  • 低レイヤーとは何か
    • 参考
    • 「低レイヤーとは 「生の」コンピュータに近いことを意味します。」
    • OS やら CPU やらメモリやら何やら
    • 「ハードウェアに近い話」みたいにも言えるかもしれない
    • 簡単とか世間的な意味での「低レベル」とは関係ない
    • 参考:「高レイヤー」は Web アプリなど
  • この辺は基本情報技術者試験などで「基礎知識」として問われたりする

第二問 ABC 081 A - Placing Marbles

  • 文字列は文字からなるリスト(配列)とみなす
  • count() の説明は例えばここ
    • 解説が何を言っているかよくわからないこともよくある
    • サンプルをいくつか動かす方が早いこともよくある
    • 数学でもよくある:一般論・抽象論ばかりではなく例をいじろう

python input_str = "101" print(input_str.count("1"))

1
  2

python input_str = "abcabcab" print(input_str.count("a"))

1
  3

python input_str = "abcabcab" print(input_str.count("abc"))

1
  2

プログラミングの一般論

インポートまわりの話

  • 「お行儀」の問題もいろいろある。
    • コーディングルールとして言及されることはよくある。
  • たくさん読み書きしてはじめてわかることもある。
    • ある程度の量はこなさないと見えない世界がある

初心者にありがちな話:モジュールの内容を全部インポートする

  • 「いちいち必要なのだけ選ぶのはめんどい」
  • 「楽でいいじゃない」

python from sympy import * from numpy import * x,y,z = symbols("x,y,z")

問題点
  • 知らないモジュールのインポートがたくさんあると、どのクラス・関数がどのモジュールから来ているのかわからない
  • 似た名前の関数やクラスなどもたくさんある
  • 他人も読むコードではやめてほしい
  • 将来、詳細を忘れた自分が読むのも厳しい
  • 「わけがわからないので、使うクラスや関数だけインポートしてほしい」
    • 例:使うものだけインポート
      • https://github.com/django/django/blob/master/django/middleware/cache.py#L48-L50
  • 「使うクラス・メソッドだけインポートするか、as で呼ぶかする」といった規約をつけていることもよくある
    • sympy, numpy あたりはお行儀がよくて、必要なモノだけインポートするよう徹底されている模様

python import numpy as np import matplotlib.pyplot as plt

いろいろなインポートの指定

  • 状況に合わせて都合がいいからそうする
  • 状況に合わせた方法もいろいろ準備されている
    • 必要だったから体系化されて盛り込まれている

python from fractions import Fraction q = Fraction(3,4) print(q)

1
  3/4

python import fractions r = fractions.Fraction(3,4) print(r)

1
  3/4
  • 内容は同じだが後者は長い
    • 書くのが面倒
    • 読むときも余計なものまで読まされる
    • シンプルにしたい
  • ケースバイケースでいろいろやる
    • クラスだけ直接インポート:from fractions import Fraction
    • as で短くする:import fractions as f

python import fractions as f a = f.Fraction(3,4) print(a)

1
  3/4

python from numpy import * linspace(0, 10, 11)

1
  array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])

python import numpy numpy.linspace(0, 10, 11)

1
  array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])

全体像をつかもう

  • ある程度大きな姿を捕まえないと局所的に何をやっているかもわからないことはよくある
    • 料理でも下ごしらえとか
      • 「やらなくてもいいが、やらないと美味しくない」
    • フグの調理で毒を避けて処理する
      • 「死にたいならやればいい」
  • 知識や見えている範囲が狭い中で考えて判断しようとしても無駄なことはよくある
  • 意味がわかるかはさておき、ある程度たくさん知っておかないといけないことはよくある
    • 単純な知識問題もよくある
      • はまることや立ち止まることに意味がない
    • 何かを調べたいとき、対応する言葉を知らないと調べようがなければ聞きようもない
  • 本を読んでいるなら、とにかく四の五の言わずに 2-3 週読んでみるとかした方がいいこともよくある
  • プログラミングはちょっと突っ込むだけでいきなりコンピューター関係の基礎知識を大量に要求されるので、さっさと諦めてそれらを勉強する
    • 基礎からやったところですぐにわかるようになるわけもないが、それらを諦めるところまで込めて諦める

膨大な量の経験が大事

  • 経験を積むと「こうした方がいい」「これはやめてほしい」というのがいろいろたまってくる
  • コーディングルールとしてノウハウがまとまっていたりする
  • 数学でもε-δで「なぜこんなεを取るのか」みたいな話はよくあるし、「何でこんな概念を導入するのか」みたいな話はよくある。
    • 「便利だから」とか言われてもその便利なところを実感できるのはだいぶ慣れ親しんでから。
    • この苦労を経ないとその辺の意味やご利益もわからないことはよくある
    • プログラミングでも同じ
    • ある程度は量をこなそう

楽しく量をこなすには?

  • 楽しいと思えることを探すしかない
  • 何が楽しいかは自分しかわからない
  • はじめつまらなくてもやっているうちに楽しくなることもあれば、何かのきっかけで目覚めることもある
  • いい方向が見つかるまでは試行錯誤するしかない
  • この中で自然と頭を使いつつ(質を高めつつ)量もこなす必要が出てくる

2020-06-14 課題

自分用メモ

  • 常微分方程式で漸化式から微分方程式に流れる部分の書き直し
  • 勉強のおすすめ:AtCoder はどうか?C++の解説もあるし、仕事・評価にも割と直結するし、具体的な問題つきで勉強できる。
    • https://atcoder.jp/contests/apg4b
      • C++のコードをPythonで書き直してみるだけでもかなりの勉強になるはず
    • Python によるアルゴリズム https://qiita.com/cabernet_rock/items/cdd12b07d213b67d0530
  • 文と式の説明
  • IT 基礎知識みたいなやつ
  • 数値計算に関わるクラス・オブジェクトの説明
    • まずは辞書・構造体の拡大版として導入するか?
    • 変な誤解を生まないような書き方を考える
  • 遅延型方程式に対するコメント追加
  • import に関する実演
  • matplotlib のチュートリアルを読もうの会
  • matplotlib 回では実際に matplotlib のチュートリアルを読もう
    • 公式情報に触れる重要性
    • 古い情報が古いと書いてあったりする:たとえば pylab
    • Gallery
      • 見ていて面白い
      • 「どこをいじるとどう変わるか」が視覚的にわかる
      • 公式情報なのできちんとアップデートしてくれている(はず)
      • 公式情報にソースがあるので自分でいろいろ書き換えていて破滅したとき、必ずオリジナルを復元できる
  • Jupyter (IPython)でのはまりどころ解説を作ろう
    • いったん変数を作ると他のセルでも読み込める(読み込めてしまう)
    • 「セルを上から順に読み込まないと動かない」問題の原因
    • カーネル再起動まで変数は残り続ける

Matplotlib

  • とりあえず本当に簡単な図を描く
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-4, 4, 201)
y1 = - 0.5 * x + 1
y2 = np.sin(x)
y3 = np.cos(x)

plt.plot(x, y1)
plt.plot(x, y2)
plt.plot(x, y3)

plt.grid()
plt.axes().set_aspect('equal', 'datalim') # アスペクト比を合わせる
plt.show()
1
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:14: MatplotlibDeprecationWarning: Adding an axes using the same arguments as a previous axes currently reuses the earlier instance.  In a future version, a new instance will always be created and returned.  Meanwhile, this warning can be suppressed, and the future behavior ensured, by passing a unique label to each axes instance.

勉強ネタ紹介

  • 前回も言ったように、自分に合った、楽しめるネタを探す必要がある
    • 勉強しなければいけないことと、やっていて楽しめること・長続きすることが一致しないこともよくある
  • 教材がある事案
  • 最近の私の趣味と実益を兼ねた対象がデータ構造とアルゴリズムなので、ここでもその辺を試してみている
  • 例えば上の中でも興味のあるネタがあればそれは取り上げるので、要望があれば挙げてほしい。
    • 自然言語処理の UNIX コマンドとか

競プロを 2 題解いてみる

  • https://qiita.com/KoyanagiHitoshi/items/c5e82841b8d0f750851d の 3 題目と最後の問題
  • AOJ も勉強用にお勧め
    • 素因数分解など数学ネタもある
    • これをもとにしたもある
    • 言語が C/C++ なのが難点といえば難点
    • C/C++ の方が低レイヤーを意識しやすくなる利点はある
  • 最近は Python によるデータ構造とアルゴリズムの本も出ているし、ネット上に資料もある

ABC081B、Shift only

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
#https://atcoder.jp/contests/abs/submissions/14323299
#input()
#A = list(map(int, input().split()))

def f(A):
    count = 0
    while all(a % 2 == 0 for a in A):
        A = [a/2 for a in A]
        count += 1
    print(count)

A = [8, 12, 40]
f(A)

A = [5, 6, 8, 10]
f(A)

A = [382253568, 723152896, 37802240, 379425024, 404894720, 471526144]
f(A)
1
2
3
2
0
8
Python の all

Pythonでリストやタプルなどのイテラブルオブジェクトの要素がすべてTrue(真)か、いずれか一つでもTrueか、あるいは、すべてFalse(偽)かを判定するには組み込み関数all(), any()を使う。

1
2
print(all([True, True, True]))
print(all([True, False]))
1
2
True
False

ABC086C、Traveling

  • 止まれない条件
    • 止まってよければ問題は簡単:時間に関する制約だけでいい
    • 非現実的な問題設定にしたおかげで難しくなっている
    • cf. たいていの場合は現実が難しすぎるから簡単にした問題を解く
  • 「距離」
    • 京都・札幌・マンハッタンのような碁盤目状に道が整備された街での 2 点間の距離をどう測るといいか?
      • 普通の2点間の距離(ユークリッド距離)$\sqrt{(x_1 - x_2)^2 + (y_1 - y_2)^2}$ では不適切。
      • $|x_1 - x_2| + |x_1 - x_2|$ で測る方が適切。
      • 機械学習でも $L^1$ 正則化などで出てくる。
      • 情報系(?)だとマンハッタン距離と呼ぶ。
      • 数学では $L^1$ ノルムと呼ぶ。
        • 一般には $L^p$ ノルムという概念がある
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#N = int(input())
def f(N, course):
    count = 0
    T, X, Y = 0, 0, 0
    for i in range(N):
        #t, x, y = map(int, input().split()) # 都度読み込み:駄目な経路があれば即終了
        t, x, y = course[i]
        if abs(x-X)+abs(y-Y) <= t-T and t % 2 == (x+y) % 2:
            count += 1
        T, X, Y = t, x, y
    print("Yes" if count == N else "No")

N = 2
course = [(3, 1, 2,), (6, 1, 1)]
f(N, courses)

N = 1
course = [(2, 100, 100)]
f(N, course)

N = 2
course = [(5, 1, 1), (100, 1, 1)]
f(N, course)
1
2
3
Yes
No
No
1
2
3
4
5
6
7
8
if count == N:
    s = "Yes"
    if a == B:
        s = "a"
    elif a == C:
        s = "b"
else:
    s = "No"
現実的なスケジューリングの問題
  • Google Map の経路探索
  • Yahoo 路線情報などの経路探索
  • 野球・サッカーなどの年間試合日程
  • PASMO などでの運賃清算
PASMO などの運賃計算
  • 論文が出るほどの問題
    • 解説記事
    • https://www.orsj.or.jp/~archive/pdf/j_mag/Vol.54_J_001.pdf
    • https://www.seikei.ac.jp/university/rikou/pdf/JFST440213.pdf
    • https://ci.nii.ac.jp/naid/110008913789
  • 何が難しいか:乗車情報を使って東京の複雑な路線図から「最安運賃」を即座に計算させる
    • 使える時間は 0.2 秒
    • 運賃が高く計算されたら怒られる
    • 安ければ文句がでない
    • いくらでも変な経路がありうる
    • 余計な枝をはじいて重要な部分だけ計算する
  • どうやって:これがアルゴリズム研究
    • ほぼ純粋なプログラムだけの問題
  • テストの視点
    • どんな始点・終点であっても問題なく動くか、プログラムを検証する問題もある
    • 検証すべきパターンは $10^{40}$ 程度あるとか:解説記事
プロスポーツのスケジュール決定
  • OR の研究課題
  • 多数のステークホルダーの利害調整問題
    • ドームなどはコンサートもある
      • 著名アイドル・歌手の結成何周年イベントなどは「この時期、できれば第何週」というレベルで細かい指定が入る
      • ドル箱はもちろん優先
    • 春夏の甲子園の時期は高校野球に占拠される
    • 各チームが過酷な移動スケジュールにならないような配慮
      • 「九州から北海道に順に移動していき、逆順に移動していく」みたいな形だと移動の負担は少ない
      • 必ずしもそううまくは組めない
      • 長時間移動だけでも体力消費があり選手パフォーマンスに影響する
      • 旅費もかさむ
  • どうするか?
    • これも組み合わせは膨大で、電車ほど激しくはないが短時間で計算させたい
    • 最終的には人間の目も入れる必要があるだろう
    • コンピューターにいくつか候補を計算させたい
    • 適当にイベントと時期に重みづけ(ペナルティ)をつけて「一定程度以上ペナルティが積まれたスケジュールはもう考えない」といった工夫がいる
    • いい感じのスケジュールにならなければパラメータ調整して再計算させたい
      • このサイクルはなるべく早く回したい
      • 高速計算の需要
      • この辺は最近はやりの機械学習でもまさに同じような事情がある

プログラミングの一般論

  • Web システムを例にした速度問題
  • データ構造とアルゴリズム
    • 連結リストと配列:どんな特性があるか?
    • スタックとキュー:いつどこで使うか?どう実装するか?

web システムの事例

  • 参考
  • システムが重いというときどこにどんな原因があるか?
    • ソシャゲでもよくある「障害発生」はどこでどう起こるか?
    • どこかのサーバーが物理的に壊れることもある
  • データ構造とアルゴリズム(いわゆる「プログラミング」)がかかわるのはどこか?
    • web サーバーでの処理(プログラム)
    • データベースの(インデックス)設計
    • ソフトによる問題なら基本的にはどこにでもありうる

データ構造とアルゴリズム

  • 鶏と卵で、同時に考えるべきテーマ:何かをするためにはどうデータを持ってどんな処理をすれば効率がいいか?
    • 効率にもいろいろある
    • 単純な処理速度・メモリ消費量・計算量
(連結)リストと配列
  • 何が違うのか?
  • メモリ上の配置やデータの「つなぎ方」
  • 状況によって使い分ける
リストの特徴
  • 要素数は変わることが前提
  • データを(先頭に)追加するのは簡単
  • データの削除も比較的簡単
  • 先頭から 1 つずつ順に処理するならそれなり
  • 検索やデータの書き換えが遅い:連結構造をたどる必要がある
配列の特徴
  • 要素数は固定
  • データの追加・削除が重め
  • データの参照・書き換えが速い:アドレスが連続なので先頭さえわかれば「そこから何番先」と直指定できる
  • 「リストで遅ければ配列で書き直す」みたいなことはよくある
ベクター(参考
  • 「要素数可変の配列」
  • リストのように要素追加・削除が比較的低コストで、要素の参照・書き換えも配列のように速い
  • 何が問題か:要素の追加が楽なように余計なメモリ領域を確保する
  • ハードウェア組み込みプログラムのように、メモリがカツカツの状況では使えない
    • 「メモリがカツカツ」という意味が理解できるか?

2020-06-20 課題

メモ:先に進む前に録画してあるか確認しよう

自分用メモ

  • 常微分方程式で漸化式から微分方程式に流れる部分の書き直し
  • 勉強のおすすめ:AtCoder はどうか?C++の解説もあるし、仕事・評価にも割と直結するし、具体的な問題つきで勉強できる。
    • https://atcoder.jp/contests/apg4b
      • C++のコードをPythonで書き直してみるだけでもかなりの勉強になるはず
    • Python によるアルゴリズム https://qiita.com/cabernet_rock/items/cdd12b07d213b67d0530
  • 文と式の説明
  • IT 基礎知識みたいなやつ
  • 数値計算に関わるクラス・オブジェクトの説明
    • まずは辞書・構造体の拡大版として導入するか?
    • 変な誤解を生まないような書き方を考える
  • 遅延型方程式に対するコメント追加
  • import に関する実演
  • matplotlib のチュートリアルを読もうの会
  • matplotlib 回では実際に matplotlib のチュートリアルを読もう
    • 公式情報に触れる重要性
    • 古い情報が古いと書いてあったりする:たとえば pylab
    • Gallery
      • 見ていて面白い
      • 「どこをいじるとどう変わるか」が視覚的にわかる
      • 公式情報なのできちんとアップデートしてくれている(はず)
      • 公式情報にソースがあるので自分でいろいろ書き換えていて破滅したとき、必ずオリジナルを復元できる
  • Jupyter (IPython)でのはまりどころ解説を作ろう
    • いったん変数を作ると他のセルでも読み込める(読み込めてしまう)
    • 「セルを上から順に読み込まないと動かない」問題の原因
    • カーネル再起動まで変数は残り続ける

Matplotlib

  • とりあえず本当に簡単な図を描く
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-4, 4, 201)
y1 = x**2 - 2 * x + 1
y2 = x**3 + 2 * x + 3
y3 = x**4 - x**2 - 2 * x + 3

plt.plot(x, y1, label="y1")
plt.plot(x, y2, label="y2")
plt.plot(x, y3, label="y3")

plt.grid()
plt.legend()
#plt.axes().set_aspect('equal', 'datalim') # アスペクト比を合わせる
plt.show()

自然言語処理100本ノック

第1章: 準備運動 00. 文字列の逆順

文字列"stressed"の文字を逆に(末尾から先頭に向かって)並べた文字列を得よ.

1
2
print("".join(list(reversed("stressed"))))
print("stressed"[::-1])
1
2
desserts
desserts
1
reversed("stressed")
1
<reversed at 0x7fddcfffd5f8>
1
"".join(reversed("stressed"))
1
'desserts'
1
list(reversed("stressed"))
1
['d', 'e', 's', 's', 'e', 'r', 't', 's']
1
"|".join(list(reversed("stressed")))
1
'd|e|s|s|e|r|t|s'
1
"stressed"[::2]
1
'srse'

第1章: 準備運動 01. 「パタトクカシーー」

  • 「パタトクカシーー」という文字列の1,3,5,7文字目を取り出して連結した文字列を得よ.
1
print("パタトクカシーー"[1::2])
1
タクシー
1
print("パタトクカシーー"[0::2])
1
パトカー

02. 「パトカー」+「タクシー」=「パタトクカシーー」

「パトカー」+「タクシー」の文字を先頭から交互に連結して文字列「パタトクカシーー」を得よ.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
s1 = "パトカー"
s2 = "タクシー"


print("".join([s1[i] + s2[i] for i in range(4)]))


s = ""
for i in range(4):
    print(s)
    s = s + s1[i]+ s2[i]
print(s)
1
2
3
4
5
6
パタトクカシーー

パタ
パタトク
パタトクカシ
パタトクカシーー

03 円周率

"Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."という文を単語に分解し,各単語の(アルファベットの)文字数を先頭から出現順に並べたリストを作成せよ.

1
2
s = "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."
print(list(map(lambda x: len(x), s.split())))
1
[3, 1, 4, 1, 6, 9, 2, 7, 5, 3, 5, 8, 9, 7, 9]
1
2
s = "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."
s.split()
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
['Now',
 'I',
 'need',
 'a',
 'drink,',
 'alcoholic',
 'of',
 'course,',
 'after',
 'the',
 'heavy',
 'lectures',
 'involving',
 'quantum',
 'mechanics.']
1
2
s = "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."
print(list(map(lambda x: len(x), s.replace(",", "").replace(".", "").split())))
1
[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9]
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
s = "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."
print(s.replace(",", ""))
print(s.replace(",", "").replace(".", ""))
print(s.replace(",", "").replace(".", "").split())

xs = []
for x in s.replace(",", "").replace(".", "").split():
    print(len(x))
    xs.append(len(x))
print(xs)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
Now I need a drink alcoholic of course after the heavy lectures involving quantum mechanics.
Now I need a drink alcoholic of course after the heavy lectures involving quantum mechanics
['Now', 'I', 'need', 'a', 'drink', 'alcoholic', 'of', 'course', 'after', 'the', 'heavy', 'lectures', 'involving', 'quantum', 'mechanics']
3
1
4
1
5
9
2
6
5
3
5
8
9
7
9
[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9]

04. 元素記号

"Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might Also Sign Peace Security Clause. Arthur King Can."という文を単語に分解し,1, 5, 6, 7, 8, 9, 15, 16, 19番目の単語は先頭の1文字,それ以外の単語は先頭の2文字を取り出し,取り出した文字列から単語の位置(先頭から何番目の単語か)への連想配列(辞書型もしくはマップ型)を作成せよ.

(言っていることがよくわからなくて何度も読み返した。)

1
2
3
4
5
6
7
8
9
numbers = [1,5,6,7,8,9,15,16,19]
numbers = list(map(lambda x: x - 1, numbers))

def f(i,v):
    return v[0] if i in numbers else v[0:2]

s = "Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might Also Sign Peace Security Clause. Arthur King Can."
s = s.replace(",", "").replace(".", "").split()
print({f(i,v): i for i, v in enumerate(s)})
1
{'H': 0, 'He': 1, 'Li': 2, 'Be': 3, 'B': 4, 'C': 5, 'N': 6, 'O': 7, 'F': 8, 'Ne': 9, 'Na': 10, 'Mi': 11, 'Al': 12, 'Si': 13, 'P': 14, 'S': 15, 'Cl': 16, 'Ar': 17, 'K': 18, 'Ca': 19}
1
2
3
4
5
s = ""
if i in numbers:
    s = v[0]
else:
    s = v[0:2]
内包表記をループで書き直した
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
numbers = [1,5,6,7,8,9,15,16,19]
numbers = list(map(lambda x: x - 1, numbers))

def f(i,v):
    return v[0] if i in numbers else v[0:2]

s = "Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might Also Sign Peace Security Clause. Arthur King Can."
s = s.replace(",", "").replace(".", "").split()

dic = {}
for i,v in enumerate(s):
    dic[f(i,v)] = i

print(dic)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
0
Hi

1
He

2
Lied

3
Because

4
Boron

5
Could

6
Not

7
Oxidize

8
Fluorine

9
New

10
Nations

11
Might

12
Also

13
Sign

14
Peace

15
Security

16
Clause

17
Arthur

18
King

19
Can

{'H': 0, 'He': 1, 'Li': 2, 'Be': 3, 'B': 4, 'C': 5, 'N': 6, 'O': 7, 'F': 8, 'Ne': 9, 'Na': 10, 'Mi': 11, 'Al': 12, 'Si': 13, 'P': 14, 'S': 15, 'Cl': 16, 'Ar': 17, 'K': 18, 'Ca': 19}

プログラミングの一般論

  • Web システムを例にした速度問題
  • データ構造とアルゴリズム
    • 連結リストと配列:どんな特性があるか?
    • スタックとキュー:いつどこで使うか?どう実装するか?

web システムの事例

  • 参考
  • システムが重いというときどこにどんな原因があるか?
    • ソシャゲでもよくある「障害発生」はどこでどう起こるか?
    • どこかのサーバーが物理的に壊れることもある
  • データ構造とアルゴリズム(いわゆる「プログラミング」)がかかわるのはどこか?
    • web サーバーでの処理(プログラム)
    • データベースの(インデックス)設計
    • ソフトによる問題なら基本的にはどこにでもありうる

データ構造とアルゴリズム

  • 鶏と卵で、同時に考えるべきテーマ:何かをするためにはどうデータを持ってどんな処理をすれば効率がいいか?
    • 効率にもいろいろある
    • 単純な処理速度・メモリ消費量・計算量
(連結)リストと配列
  • 何が違うのか?
  • メモリ上の配置やデータの「つなぎ方」
  • 状況によって使い分ける
リストの特徴
  • 要素数は変わることが前提
  • データを(先頭に)追加するのは簡単
  • データの削除も比較的簡単
  • 先頭から 1 つずつ順に処理するならそれなり
  • 検索やデータの書き換えが遅い:連結構造をたどる必要がある
配列の特徴
  • 要素数は固定
  • データの追加・削除が重め
  • データの参照・書き換えが速い:アドレスが連続なので先頭さえわかれば「そこから何番先」と直指定できる
  • 「リストで遅ければ配列で書き直す」みたいなことはよくある
ベクター(参考
  • 「要素数可変の配列」
  • リストのように要素追加・削除が比較的低コストで、要素の参照・書き換えも配列のように速い
  • 何が問題か:要素の追加が楽なように余計なメモリ領域を確保する
  • ハードウェア組み込みプログラムのように、メモリがカツカツの状況では使えない
    • 「メモリがカツカツ」という意味が理解できるか?

2020-06-28 課題

メモ:先に進む前に録画してあるか確認しよう

  • メモ:東大の AWS クラウド講義資料
  • https://tomomano.gitlab.io/intro-aws/#_hands_on_5_bashoutter
  • これを眺めてみるのもいいかもしれない

自分用メモ

  • 常微分方程式で漸化式から微分方程式に流れる部分の書き直し
  • 勉強のおすすめ:AtCoder はどうか?C++の解説もあるし、仕事・評価にも割と直結するし、具体的な問題つきで勉強できる。
    • https://atcoder.jp/contests/apg4b
      • C++のコードをPythonで書き直してみるだけでもかなりの勉強になるはず
    • Python によるアルゴリズム https://qiita.com/cabernet_rock/items/cdd12b07d213b67d0530
  • 文と式の説明
  • IT 基礎知識みたいなやつ
  • 数値計算に関わるクラス・オブジェクトの説明
    • まずは辞書・構造体の拡大版として導入するか?
    • 変な誤解を生まないような書き方を考える
  • 遅延型方程式に対するコメント追加
  • import に関する実演
  • matplotlib のチュートリアルを読もうの会
  • matplotlib 回では実際に matplotlib のチュートリアルを読もう
    • 公式情報に触れる重要性
    • 古い情報が古いと書いてあったりする:たとえば pylab
    • Gallery
      • 見ていて面白い
      • 「どこをいじるとどう変わるか」が視覚的にわかる
      • 公式情報なのできちんとアップデートしてくれている(はず)
      • 公式情報にソースがあるので自分でいろいろ書き換えていて破滅したとき、必ずオリジナルを復元できる
  • Jupyter (IPython)でのはまりどころ解説を作ろう
    • いったん変数を作ると他のセルでも読み込める(読み込めてしまう)
    • 「セルを上から順に読み込まないと動かない」問題の原因
    • カーネル再起動まで変数は残り続ける

Matplotlib

  • とりあえず本当に簡単な図を描く
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0.01, 4, 201)
y1 = np.exp(x)
y2 = np.log(x)

plt.plot(x, y1, label="e^x")
plt.plot(x, y2, label="\log x")

plt.grid()
plt.legend()
#plt.axes().set_aspect('equal', 'datalim') # アスペクト比を合わせる
plt.show()

TeX の記録

量子力学の1粒子ハミルトニアン。 \begin{align} \hat{H} = \frac{1}{2m} \hat{p}^2 + V(x). \end{align}

自然言語処理100本ノック

第2章 Unix コマンド

  • 要検討:ローカルでやった方がデモンストレーションとしてはいいかもしれない
  • 参考ページ
    • ここでは pandas を使っている
    • これはこれで覚えると便利
    • Excel が処理できる
  • Google Colab 上では !ls のように ! をつけると Unix (Linux) コマンドが実行できる。
  • Mac ならターミナルから直接実行できる
  • Windows でも適当な手段でインストールできる
    • ただし OS の違いから純粋な Windows では意味を持たないコマンドもある
    • chown や chmod などの権限管理とか
  • すさまじく大量にあり、各コマンドはオプションも死ぬほどたくさんある。
    • 毎日ゴリゴリに使い込まければ覚えられるものではない。
    • 大事なコマンドをいくつか見て慣れ親しむことだけが目的。
補足
  • cd, ls などの(もっと)基本的なコマンドはカバーされていない。
  • 参考リスト:とりあえずこのくらい知っておくといい(名前だけ何となく覚えていればいい)
  • Python にも対応する関数がある
    • mv は shutil.move: https://note.nkmk.me/python-shutil-move/
    • shutil はたぶん shell utilities の略
  • Ruby だと「わかりやすさ」を考えて Linux コマンドと同じ名前の関数・メソッドで定義されている
準備
1
!wget https://nlp100.github.io/data/popular-names.txt
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
--2020-07-12 03:48:25--  https://nlp100.github.io/data/popular-names.txt
Resolving nlp100.github.io (nlp100.github.io)... 185.199.111.153, 185.199.109.153, 185.199.110.153, ...
Connecting to nlp100.github.io (nlp100.github.io)|185.199.111.153|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 55026 (54K) [text/plain]
Saving to: ‘popular-names.txt.1'

popular-names.txt.1 100%[===================>]  53.74K  --.-KB/s    in 0.03s

2020-07-12 03:48:25 (2.03 MB/s) - ‘popular-names.txt.1' saved [55026/55026]
1
!wc --help
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Usage: wc [OPTION]... [FILE]...
  or:  wc [OPTION]... --files0-from=F
Print newline, word, and byte counts for each FILE, and a total line if
more than one FILE is specified.  A word is a non-zero-length sequence of
characters delimited by white space.

With no FILE, or when FILE is -, read standard input.

The options below may be used to select which counts are printed, always in
the following order: newline, word, character, byte, maximum line length.
  -c, --bytes            print the byte counts
  -m, --chars            print the character counts
  -l, --lines            print the newline counts
      --files0-from=F    read input from the files specified by
                           NUL-terminated names in file F;
                           If F is - then read names from standard input
  -L, --max-line-length  print the maximum display width
  -w, --words            print the word counts
      --help     display this help and exit
      --version  output version information and exit

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
Full documentation at: <http://www.gnu.org/software/coreutils/wc>
or available locally via: info '(coreutils) wc invocation'
10. 行数のカウント

行数をカウントせよ.確認にはwcコマンドを用いよ.

1
!wc -l ./popular-names.txt
1
2780 ./popular-names.txt
1
2
3
4
import pandas as pd

df = pd.read_table('./popular-names.txt', header=None, sep='\t', names=['name', 'sex', 'number', 'year'])
print(len(df))
1
2780
補足:wc コマンドの調査
  • 参考
  • 実際にターミナルで実演してみよう
11. タブをスペースに置換

タブ1文字につきスペース1文字に置換せよ.確認にはsedコマンド,trコマンド,もしくはexpandコマンドを用いよ.

1
!sed -e 's/\t/ /g' ./popular-names.txt | head -n 5
1
2
3
4
5
Mary F 7065 1880
Anna F 2604 1880
Emma F 2003 1880
Elizabeth F 1939 1880
Minnie F 1746 1880

s/何とか/実はこう書きたかった/

1
!head -n 5 popular-names.txt
1
2
3
4
5
Mary    F   7065    1880
Anna    F   2604    1880
Emma    F   2003    1880
Elizabeth   F   1939    1880
Minnie  F   1746    1880
12. 1列目をcol1.txtに,2列目をcol2.txtに保存

各行の1列目だけを抜き出したものをcol1.txtに,2列目だけを抜き出したものをcol2.txtとしてファイルに保存せよ.確認にはcutコマンドを用いよ.

Linux コマンド
1
2
3
4
5
!cut -f 1 ./popular-names.txt > ./col1_chk.txt
!cat ./col1_chk.txt | head -n 5

!cut -f 2 ./popular-names.txt > ./col2_chk.txt
!cat ./col2_chk.txt | head -n 5
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
Mary
Anna
Emma
Elizabeth
Minnie
F
F
F
F
F
Python
1
2
3
4
5
6
7
col1 = df['name']
col1.to_csv('./col1.txt', =False)
print(col1.head())

col2 = df['sex']
col2.to_csv('./col2.txt', =False)
print(col2.head())
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
0         Mary
1         Anna
2         Emma
3    Elizabeth
4       Minnie
Name: name, dtype: object
0    F
1    F
2    F
3    F
4    F
Name: sex, dtype: object

第 3 章 正規表現

正規表現の簡単な話
  • 分厚い本が何冊も出るくらいのごつい話
  • 例:「イギリス」という言葉が出てくる文章を調べたい
    • 単なる検索でいい
  • 例:「イギリス+単語」という言葉が出てくる文章を、その単語セットとともに調べたい。
    • 例えばイギリスではなく「イギリス連邦」「イギリスの勝利」のような形で調べたい
    • ここで正規表現が出てくる
  • もう少し web でよくある例
    • メールアドレスのバリデーション
    • 「メインの文字列@gmail.com」みたいなのをチェックする
  • メンテナンスが魔界
    • 正規表現は死ぬほど複雑で簡単な部類でさえすでに読みにくい
    • 複雑なものは本当に何もわからない
    • 時間が経つと書いた当人でさえ判別できないことはよくある
ファイル取得
1
!wget https://nlp100.github.io/data/jawiki-country.json.gz
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
--2020-07-12 03:48:38--  https://nlp100.github.io/data/jawiki-country.json.gz
Resolving nlp100.github.io (nlp100.github.io)... 185.199.108.153, 185.199.109.153, 185.199.110.153, ...
Connecting to nlp100.github.io (nlp100.github.io)|185.199.108.153|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5068362 (4.8M) [application/gzip]
Saving to: ‘jawiki-country.json.gz.1'

jawiki-country.json 100%[===================>]   4.83M  13.3MB/s    in 0.4s

2020-07-12 03:48:38 (13.3 MB/s) - ‘jawiki-country.json.gz.1' saved [5068362/5068362]
展開(解凍)
1
!gunzip ./jawiki-country.json.gz
行数確認
1
!wc -l ./jawiki-country.json
1
248 ./jawiki-country.json
先頭行の確認
1
!head -1 ./jawiki-country.json
1
{"title": "エジプト", "text": "{{otheruses|主に現代のエジプト・アラブ共和国|古代|古代エジプト}}\n{{基礎情報 国\n|略名 =エジプト\n|漢字書き=埃及\n|日本語国名 =エジプト・アラブ共和国\n|公式国名 ={{lang|ar|'''جمهورية مصر العربية'''}}\n|国旗画像 =Flag of Egypt.svg\n|国章画像 =[[ファイル:Coat_of_arms_of_Egypt.svg|100px|エジプトの国章]]\n|国章リンク =([[エジプトの国章|国章]])\n|標語 =なし\n|位置画像 =Egypt (orthographic projection).svg\n|公用語 =[[アラビア語]]\n|首都 =[[File:Flag of Cairo.svg|24px]] [[カイロ]]\n|最大都市 =カイロ\n|元首等肩書 =[[近代エジプトの国家元首の一覧|大統領]]\n|元首等氏名 =[[アブドルファッターフ・アッ=シーシー]]\n|首相等肩書 ={{ill2|エジプトの首相|en|Prime Minister of Egypt|label=首相}}\n|首相等氏名 ={{仮リンク|ムスタファ・マドブーリー|ar|مصطفى مدبولي|en|Moustafa Madbouly}}\n|面積順位 =29\n|面積大きさ =1 E12\n|面積値 =1,010,408\n|水面積率 =0.6%\n|人口統計年 =2012\n|人口順位 =\n|人口大きさ =1 E7\n|人口値 =1億人\n|人口密度値 =76\n|GDP統計年元 =2018\n|GDP値元 =4兆4,374億<ref name=\"economy\">IMF Data and Statistics 2020年2月3日閲覧([https://www.imf.org/external/pubs/ft/weo/2019/02/weodata/weorept.aspx?sy=2017&ey=2024&scsm=1&ssd=1&sort=country&ds=.&br=1&c=469&s=NGDP%2CNGDPD%2CPPPGDP%2CNGDPDPC%2CPPPPC&grp=0&a=&pr.x=57&pr.y=4])</ref>\n|GDP統計年MER =2018\n|GDP順位MER =45\n|GDP値MER =2,496億<ref name=\"economy\" />\n|GDP統計年 =2018\n|GDP順位 =21\n|GDP値 =1兆2,954億<ref name=\"economy\" />\n|GDP/人 =13,358<ref name=\"economy\" />\n|建国形態 =[[独立]]<br />&nbsp;-&nbsp;日付\n|建国年月日 =[[イギリス]]より<br />[[1922年]][[2月28日]]\n|通貨 =[[エジプト・ポンド]] (£)\n|通貨コード =EGP\n|時間帯 = +2\n|夏時間 =なし\n|国歌 =[[エジプトの国歌|{{lang|ar|بلادي، بلادي، بلادي}}]]{{ar icon}}<br>''我が祖国''<br>{{center|[[file:Bilady, Bilady, Bilady.ogg]]}}\n|ISO 3166-1 = EG / EGY\n|ccTLD =[[.eg]]\n|国際電話番号 =20\n|注記 =\n}}\n'''エジプト・アラブ共和国'''(エジプト・アラブきょうわこく、{{lang-ar|جمهورية مصر العربية}})、通称'''エジプト'''は、[[中東]]([[アラブ世界]])および[[北アフリカ]]にある[[共和国]]。[[首都]]は[[カイロ]]。\n\n[[アフリカ大陸]]では北東端に位置し、西に[[リビア]]、南に[[スーダン]]、北東の[[シナイ半島]]では[[イスラエル]]、[[ガザ地区]]と[[国境]]を接する。北は[[地中海]]、東は[[紅海]]に面している。南北に流れる[[ナイル川]]の[[河谷]]と[[三角州|デルタ]]地帯([[ナイル・デルタ]])のほかは、国土の大部分の95%以上が[[砂漠]]である<ref>[https://kotobank.jp/word/エジプト-36404 エジプト]藤井宏志『日本大百科全書』小学館 2020年2月1日閲覧</ref>。ナイル河口の東に地中海と紅海を結ぶ[[スエズ運河]]がある。\n\n== 国号 ==\n正式名称は[[アラビア語]]で {{lang|ar|'''جمهورية مصر العربية'''}}(ラテン[[翻字]]: {{transl|ar|DIN|Ǧumhūrīyah Miṣr al-ʿarabīyah}})。通称は {{lang|ar|'''مصر'''}}([[フスハー|標準語]]: {{transl|ar|DIN|Miṣr}} ミスル、[[アラビア語エジプト方言|エジプト方言]]ほか、口語アラビア語: {{IPA|mɑsˤɾ}} マスル)。[[コプト語]]: {{Lang|cop|Ⲭⲏⲙⲓ}}(Khemi ケーミ)。\n\nアラビア語の名称'''ミスル'''は、古代から[[セム語派|セム語]]でこの地を指した名称である。なお、セム語の一派である[[ヘブライ語]]では、[[双数形]]の'''ミスライム'''({{lang|he|מצרים}}, ミツライム)となる。\n\n公式の英語表記は '''Arab Republic of Egypt'''。通称 '''Egypt''' {{IPA-en|ˈiːdʒɨpt|}}。形容詞はEgyptian {{IPA-en|ɨˈdʒɪpʃ''ə''n|}}。エジプトの呼称は、古代[[エジプト語]]のフート・カア・プタハ([[プタハ]]神の魂の神殿)から転じてこの地を指すようになったギリシャ語の単語である、[[ギリシャ神話]]の[[アイギュプトス (ギリシア神話)|アイギュプトス]]にちなむ。\n\n[[日本語]]の表記はエジプト・アラブ共和国。通称[[wikt:エジプト|エジプト]]。[[漢字]]では'''埃及'''と表記し、'''埃'''と略す。この[[国名の漢字表記一覧|漢字表記]]は、[[漢文]]がそのまま日本語や[[中国語]]などに輸入されたものである。英語では「イージプト」と呼ばれる。\n\n* [[1882年]] - 1922年 ({{仮リンク|イギリス領エジプト|en|History of Egypt under the British}})\n* 1922年 - 1953年 [[エジプト王国]]\n* 1953年 - 1958年 [[エジプト共和国]]\n* 1958年 - 1971年 [[アラブ連合共和国]]\n* 1971年 - 現在 エジプト・アラブ共和国\n\n== 歴史 ==\n{{Main|エジプトの歴史}}\n\n=== 古代エジプト ===\n[[ファイル:All Gizah Pyramids.jpg|thumb|300px|right|[[ギーザ|ギザ]]の[[三大ピラミッド]]]]\n[[ファイル:Egyptiska hieroglyfer, Nordisk familjebok.png|thumb|260px|right|[[ヒエログリフ]]]]\n{{Main|古代エジプト}}\n\n「エジプトはナイルの賜物」という[[古代ギリシア]]の[[歴史家]][[ヘロドトス]]の言葉で有名なように、エジプトは豊かな[[ナイル川]]の[[三角州|デルタ]]に支えられ[[古代エジプト|古代エジプト文明]]を発展させてきた。エジプト人は[[紀元前3000年]]ごろには早くも中央集権国家を形成し、[[ピラミッド]]や[[王家の谷]]、[[ヒエログリフ]]などを通じて世界的によく知られている高度な[[文明]]を発達させた。\n\n=== アケメネス朝ペルシア ===\n3000年にわたる諸王朝の盛衰の末、[[紀元前525年]]に[[アケメネス朝]]ペルシアに支配された。\n\n=== ヘレニズム文化 ===\n[[紀元前332年]]には[[アレクサンドロス3世|アレクサンドロス大王]]に征服された。その後、[[ギリシャ人|ギリシア系]]の[[プトレマイオス朝]]が成立し、[[ヘレニズム]]文化の中心のひとつとして栄えた。\n\n=== ローマ帝国 ===\nプトレマイオス朝は[[紀元前30年]]に滅ぼされ、エジプトは[[ローマ帝国]]の[[属州]]となり[[アエギュプトゥス]]と呼ばれた。ローマ帝国の統治下では[[キリスト教]]が広まり、[[コプト教会]]が生まれた。ローマ帝国の分割後は[[東ローマ帝国]]に属し、豊かな[[穀物]]生産でその繁栄を支えた。\n\n=== イスラム王朝 ===\n7世紀に[[イスラム教|イスラム化]]。[[639年]]に[[イスラム帝国]]の[[将軍]][[アムル・イブン・アル=アース]]によって征服され、[[ウマイヤ朝]]および[[アッバース朝]]の一部となった。アッバース朝の支配が衰えると、そのエジプト[[総督]]から自立した[[トゥールーン朝]]、[[イフシード朝]]の短い支配を経て、[[969年]]に現在の[[チュニジア]]で興った[[ファーティマ朝]]によって征服された。これ以来、[[アイユーブ朝]]、[[マムルーク朝]]とエジプトを本拠地として[[歴史的シリア|シリア地方]]まで版図に組み入れた[[イスラム王朝]]が500年以上にわたって続く。特に250年間続いたマムルーク朝の下で[[中央アジア]]や[[カフカス]]などアラブ世界の外からやってきた[[マムルーク]](奴隷軍人)による支配体制が確立した。\n\n=== オスマン帝国 ===\n[[1517年]]に、マムルーク朝を滅ぼしてエジプトを属州とした[[オスマン帝国]]のもとでもマムルーク支配は温存された({{仮リンク|エジプト・エヤレト|en|Egypt Eyalet}})。\n\n=== ムハンマド・アリー朝 ===\n[[ファイル:ModernEgypt, Muhammad Ali by Auguste Couder, BAP 17996.jpg|thumb|180px|[[ムハンマド・アリー]]]]\n[[1798年]]、[[フランス]]の[[ナポレオン・ボナパルト]]による[[エジプト・シリア戦役|エジプト遠征]]をきっかけに、エジプトは[[近代国家]]形成の時代を迎える。フランス軍撤退後、混乱を収拾して権力を掌握したのはオスマン帝国が派遣した[[アルバニア人]]部隊の隊長としてエジプトにやってきた軍人、[[ムハンマド・アリー]]であった。彼は実力によってエジプト総督に就任すると、マムルークを打倒して総督による中央集権化を打ち立て、[[経済]]・[[軍事]]の近代化を進め、エジプトをオスマン帝国から半ば独立させることに成功した。アルバニア系ムハンマド・アリー家による[[世襲]]政権を打ち立てた([[ムハンマド・アリー朝]])。しかし、当時の世界に勢力を広げた[[ヨーロッパ]][[列強]]はエジプトの独立を認めず、また、ムハンマド・アリー朝の急速な近代化政策による社会矛盾は結局、エジプトを列強に経済的に従属させることになった。\n\n=== イギリスの進出 ===\nムハンマド・アリーは[[綿花]]を主体とする農産物[[専売制]]をとっていたが、1838年に宗主オスマン帝国が[[イギリス]]と自由貿易協定を結んだ。ムハンマド・アリーが1845年に三角州の堰堤を着工。死後に専売制が崩壊し、また堰堤の工期も延びて3回も支配者の交代を経た1861年、ようやく一応の完工をみた。1858年末には国庫債券を発行しなければならないほどエジプト財政は窮迫していた。[[スエズ運河会社]]に払い込む出資金の不足分は、シャルル・ラフィット([[:fr:Charles Laffitte|Charles Laffitte]])と割引銀行(現・[[BNPパリバ]])から借り、国庫債券で返済することにした。[[イスマーイール・パシャ]]が出資の継続を認めたとき、フランスの[[ナポレオン3世]]の裁定により契約責任を問われ、違約金が[[自転車操業]]に拍車をかけた。[[1869年]]、エジプトはフランスとともに[[スエズ運河]]を開通させた。この前後(1862 - 1873年)に8回も[[外債]]が起債され、額面も次第に巨額となっていた。エジプトはやむなくスエズ運河会社持分を398万[[スターリング・ポンド|ポンド]]でイギリスに売却したが、1876年4月に[[デフォルト]]した<ref>西谷進、「[https://doi.org/10.20624/sehs.37.2_113 一九世紀後半エジプト国家財政の行詰まりと外債 (一)]」 『社会経済史学』 1971年 37巻 2号 p.113-134,216\n, {{doi|10.20624/sehs.37.2_113}}</ref>。\n\n英仏が負債の償還をめぐって争い、エジプトの蔵相は追放された。[[イタリア]]や[[オーストリア]]も交えた負債委員会が組織された。2回目のリスケジュールでイスマーイール一族の直轄地がすべて移管されたが、土地税収が滞った<ref>西谷進、「[https://doi.org/10.20624/sehs.37.3_283 一九世紀後半エジプト国家財政の行詰まりと外債 (二)]」 社会経済史学 1971年 37巻 3号 p.283-311,330-33, {{doi|10.20624/sehs.37.3_283}}</ref>。\n\n[[1882年]]、[[アフマド・オラービー]]が中心となって起きた反英運動([[ウラービー革命]])がイギリスによって武力鎮圧された。エジプトはイギリスの[[保護国]]となる。結果として、政府の教育支出が大幅カットされるなどした。[[1914年]]には、[[第一次世界大戦]]によってイギリスがエジプトの名目上の[[宗主国]]であるオスマン帝国と開戦したため、エジプトはオスマン帝国の宗主権から切り離された。さらに[[サアド・ザグルール]]の逮捕・国外追放によって反英独立運動たる[[エジプト革命 (1919年)|1919年エジプト革命]]が勃発し、英国より主政の国として独立した。\n\n=== 独立・エジプト王国 ===\n第一次大戦後の[[1922年]][[2月28日]]に'''[[エジプト王国]]'''が成立し、翌年イギリスはその[[独立]]を認めたが、その後もイギリスの間接的な支配体制は続いた。\n\nエジプト王国は[[立憲君主制]]を布いて議会を設置し、緩やかな近代化を目指した。[[第二次世界大戦]]では、[[枢軸国軍]]がイタリア領リビアから侵攻したが、英軍が撃退した([[北アフリカ戦線]])。第二次世界大戦前後から[[パレスチナ問題]]の深刻化や、1948年から1949年の[[パレスチナ戦争]]([[第一次中東戦争]])での[[イスラエル]]への敗北、経済状況の悪化、[[ムスリム同胞団]]など政治のイスラム化([[イスラム主義]])を唱える社会勢力の台頭によって次第に動揺していった。\n\n=== エジプト共和国 ===\nこの状況を受けて[[1952年]]、軍内部の秘密組織[[自由将校団]]が[[クーデター]]を起こし、国王[[ファールーク1世 (エジプト王)|ファールーク1世]]を亡命に追い込み、ムハンマド・アリー朝を打倒した([[エジプト革命 (1952年)|エジプト革命]]<ref>片山正人『現代アフリカ・クーデター全史』叢文社 2005年 ISBN 4-7947-0523-9 p49</ref>)。生後わずか半年の[[フアード2世 (エジプト王)|フアード2世]]を即位させ、[[自由将校団]]団長の[[ムハンマド・ナギーブ]]が首相に就任して権力を掌握した。さらに翌年の1953年、国王を廃位して共和政へと移行、[[ムハンマド・ナギーブ|ナギーブ]]が首相を兼務したまま初代大統領となり、'''エジプト共和国'''が成立した。\n\n=== ナーセル政権 ===\n[[ファイル:Gamal Nasser.jpg|thumb|180px|right|[[ガマール・アブドゥル=ナーセル]]。[[第二次中東戦争]]に勝利し、スエズ運河を国有化した。ナーセルの下でエジプトは[[汎アラブ主義]]の中心となった]]\n[[1956年]]、第2代大統領に就任した[[ガマール・アブドゥル=ナーセル]]のもとでエジプトは[[冷戦]]下での中立外交と[[汎アラブ主義|汎アラブ主義(アラブ民族主義)]]を柱とする独自の政策を進め、[[第三世界]]・[[アラブ諸国]]の雄として台頭する。同年にエジプトは[[スエズ運河国有化宣言|スエズ運河国有化]]を断行し、これによって勃発した[[第二次中東戦争]](スエズ戦争)で政治的に勝利を収めた。[[1958年]]には[[シリア]]と連合して'''[[アラブ連合共和国]]'''を成立させた。しかし[[1961年]]にはシリアが連合から脱退し、[[国家連合]]としてのアラブ連合共和国はわずか3年で事実上崩壊した。さらに[[1967年]]の[[第三次中東戦争]]は惨敗に終わり、これによってナーセルの権威は求心力を失った。\n\n=== サーダート政権 ===\n[[1970年]]に急死したナーセルの後任となった[[アンワル・アッ=サーダート]]は、自ら主導した[[第四次中東戦争]]後に[[ソビエト連邦]]と対立して[[アメリカ合衆国]]など[[西側諸国]]に接近。[[社会主義]]的経済政策の転換、[[イスラエル]]との融和など、ナーセル体制の切り替えを進めた。[[1971年]]には、国家連合崩壊後もエジプトの国号として使用されてきた「アラブ連合共和国」の国号を捨てて'''エジプト・アラブ共和国'''に改称した。また、サーダートは、経済の開放などに舵を切るうえで、左派に対抗させるべくイスラーム主義勢力を一部容認した。しかしサーダートは、イスラエルとの和平を実現させたことの反発を買い、[[1981年]]に[[イスラム過激派]]の[[ジハード団]]によって[[暗殺]]された。\n\n=== ムバーラク政権 ===\n[[ファイル:Hosni Mubarak ritratto.jpg|thumb|180px|[[アラブの春]]で失脚するまで30年以上にわたり長期政権を維持した[[ホスニー・ムバーラク]]]]\n[[イラク]]の[[クウェート侵攻]]はエジプトの国際収支を悪化させた。サーダートに代わって副大統領から大統領に昇格した[[ホスニー・ムバーラク]]は、対米協調外交を進める一方、[[開発独裁]]的な[[政権]]を20年以上にわたって維持した。\n\nムバラク政権は1990年12月に「1000日計画」と称する経済改革案を発表した。クウェート解放を目指す[[湾岸戦争]]では[[多国籍軍]]へ2万人を派兵し、これにより約130億ドルも[[対外債務]]を減らすという外交成果を得た。累積債務は500億ドル規模であった。軍事貢献により帳消しとなった債務は、クウェート、[[サウジアラビア]]に対するものと、さらに対米軍事債務67億ドルであった。1991年5月には[[国際通貨基金]]のスタンドバイクレジットおよび[[世界銀行]]の構造調整借款(SAL)が供与され、[[パリクラブ]]において200億ドルの債務削減が合意された。エジプト経済の構造調整で画期的だったのは、ドル・ペッグによる為替レート一本化であった<ref>『エジプトの経済発展の現状と課題』 [[海外経済協力基金]]開発援助研究所 1998年 23頁</ref>。\n\n海外の[[機関投資家]]に有利な条件が整えられていった。イスラム主義運動は厳しく[[弾圧]]され、[[ザカート|喜捨]]の精神は失われていった。[[1997年]]には[[イスラム集団]]による[[ルクソール事件]]が発生している。1999年にイスラム集団は武装闘争放棄を宣言し、近年、観光客を狙った事件は起こっていない。しかし、ムバーラクが大統領就任と同時に発令した[[非常事態法]]は、彼が追放されるまで30年以上にわたって継続された<ref>[http://www.cnn.co.jp/world/30001719.html エジプト副大統領が野党代表者らと会談、譲歩示す]</ref>。\n\n2002年6月、エジプト政府は15億ドルの[[ユーロ債]]を起債したが、2002年から2003年に為替差損を被り、対外債務を増加させた<ref>IMF, ''Arab Republic of Egypt: Selected Issues'', 2005, [https://books.google.co.jp/books?id=aZDSd_fjJzkC&pg=PT49&dq=reschedule+egypt+eurobond&hl=ja&sa=X&ved=0ahUKEwiD0qHpn8DbAhWLWbwKHXRrDGQQ6AEIJzAA#v=onepage&q=reschedule%20egypt%20eurobond&f=false]</ref>。\n\n=== ムルシー政権 ===\n[[ファイル:Mohamed Morsi-05-2013.jpg|thumb|180px|民主化後初の大統領だった[[ムハンマド・ムルシー]]]]\n{{Main|エジプト革命 (2011年)|2012年エジプト大統領選挙}}\n[[チュニジア]]の[[ジャスミン革命]]に端を発した近隣諸国の民主化運動がエジプトにおいても波及し、[[2011年]]1月、30年以上にわたって独裁体制を敷いてきたムバーラク大統領の辞任を求める大規模なデモが発生した。同2月には大統領支持派によるデモも発生して騒乱となり、国内主要都市において大混乱を招いた。大統領辞任を求める声は日に日に高まり、2月11日、ムバーラクは大統領を辞任し、全権が[[エジプト軍最高評議会]]に委譲された。同年12月7日には{{仮リンク|カマール・ガンズーリ|en|Kamal Ganzouri}}を暫定首相とする政権が発足した。その後、2011年12月から翌年1月にかけて人民議会選挙が、また2012年5月から6月にかけて大統領選挙が実施され[[ムハンマド・ムルシー]]が当選し、同年6月30日の大統領に就任したが、人民議会は大統領選挙決選投票直前に、選挙法が違憲との理由で裁判所から解散命令を出されており、立法権は軍最高評議会が有することとなった。\n\n2012年11月以降、新憲法の制定などをめぐって反政府デモや暴動が頻発した({{仮リンク|2012年-13年エジプト抗議運動|en|2012–13 Egyptian protests}})。ムルシー政権は、政権への不満が大規模な暴動に発展するにつれて、当初の警察改革を進める代わりに既存の組織を温存する方向に転換した。{{仮リンク|ムハンマド・イブラヒーム・ムスタファ|ar|محمد إبراهيم مصطفى|label=ムハンマド・イブラヒーム}}が内相に就任した[[2013年]]1月以降、治安部隊による政治家やデモ隊への攻撃が激化。1月末には当局との衝突でデモ参加者など40人以上が死亡したが、治安部隊への調査や処罰は行われていない<ref>「『アラブの春』の国で繰り返される悪夢」 エリン・カニンガム 『Newsweek[[ニューズウィーク]]日本版』 2013年3月5日号</ref>。イブラヒーム内相は、「国民が望むならば辞任する用意がある」と2月に述べている<ref>{{Cite news\n|url=http://english.ahram.org.eg/News/63894.aspx\n|title=I will leave my position if people want: Egypt's interior minister\n|newspaper=アハラムオンライン\n|date=2013-02-02\n|accessdate=2013-05-08\n}}</ref>。下落する[[エジプト・ポンド]]がとめどなく[[アメリカ合衆国ドル|USドル]]に交換され、[[外貨準備]]を減らすような混乱が同月10日の[[ロイター通信]]で報じられている。下落は1月から起きており、同月には[[ドバイ]]のエミレーツNBD([[:en:Emirates NBD|Emirates NBD]])が[[BNPパリバ]]のエジプト支店を完全買収した。[[オイルマネー]]がエジプト経済を我が物にする社会現象が起こっていた。さらに『[[フィナンシャル・タイムズ]]』が1月19日に報じたのは、[[エチオピア]]がナイルの川上に48億ドルの予算をかけて[[ダム]]を造るという計画であった。混乱中のエジプトが水紛争で負ければ大きな水ストレスが生じるだろうと予測された。\n\n2013年4月、[[エジプト中央銀行]]は[[リビア]]から20億ドルの預金を得た。リビア側が利害を説明したところによると、リビアはエジプト株を100億ドル近く保有しているという。リビアは[[世界金融危機]]の時から欧米の[[メガバンク]]と癒着を疑われている。\n\nムルシー政権は発足後約1年後の[[2013年エジプトクーデター|2013年7月3日、軍部によるクーデター]]によって終焉を迎えた<ref>{{Cite news\n|url=http://middleeast.asahi.com/watch/2013070800008.html\n|title=エジプトのクーデターに至る過程:朝日新聞記事再録\n|work=asahi.com\n|newspaper=[[朝日新聞]]\n|date=2013-07-09\n|accessdate=2013-07-13\n}}</ref>。8月下旬にムバラクが釈放され、国内銀行が平常運転に復帰した。8月30日の[[CNN]]では、[[中国石油化工]]が米国[[ヒューストン]]のアパッチ([[:en:Apache Corporation|Apache Corporation]])とエジプト内[[油田]]事業を提携したことが報じられた。10月下旬、[[アラブ首長国連邦]]がエジプトに50億ドルの支援を申し出た。エジプトエリートの売国とソブリン危機は翌年4月まで深化していった。\n\nなお、イブラヒームは、クーデター後に成立した[[ハーゼム・エル=ベブラーウィー|ベブラーウィー]]暫定内閣でも続投している。\n\n=== アッ=シーシー政権 ===\n[[ファイル:Abdel_Fattah_el-Sisi_September_2017.jpg|thumb|180px|[[アブドルファッターフ・アッ=シーシー]]。2013年のクーデターを主導し、大統領に就任した]]\n2014年5月26日 - 28日に行われた大統領選挙では2013年のクーデターの主導者[[アブドルファッターフ・アッ=シーシー]]が当選して6月8日、大統領に就任し<ref>http://www.afpbb.com/articles/-/3017089 エジプトのシシ新大統領が就任、前大統領の追放からほぼ1年</ref>、8月5日からは[[新スエズ運河]]の建設など大規模なプロジェクトを推し進めた。[[2015年]][[3月13日]]には、[[カイロ]]の東側に向こう5 - 7年で、450億ドルを投じて新しい行政首都の建設も計画していることを明らかにした<ref>http://jp.reuters.com/article/topNews/idJPKBN0MC0B720150316 エジプト、カイロの東に新行政首都建設へ=住宅相(ロイター通信)</ref>。行政と経済の中心となる新首都はカイロと紅海の間に建設され、広さは約700平方キロメートルで、米[[ニューヨーク]]の[[マンハッタン]]のおよそ12倍の面積の予定であり<ref>http://jp.wsj.com/articles/SB10030317691824024149004580519060782977390 エジプト、新首都建設を計画―カイロと紅海の間に</ref>、大統領府などエジプトの行政を担う地区は当初覚書を交わした[[アラブ首長国連邦]](UAE)の[[エマール・プロパティーズ]]や[[中華人民共和国|中国]]の[[中国建築|中国建築股份有限公司]]との破談はあったものの[[2016年]]4月に地元企業によって工事を開始し<ref>{{Cite news|url=http://www.xinhuanet.com/english/2016-04/02/c_135246252.htm|tile=Egypt kicks off 1st phase of building new capital|work= [[新華社]]|date=2016-04-02|accessdate=2018-06-25}}</ref>、代わりにエジプト政府がピラミッド<ref>{{Cite news|url= https://zhuanlan.zhihu.com/p/41444500|title=埃及总理表示,将新首都CBD项目建成"金字塔"一样的地标|work= 知乎专栏|date=2018-08-06|accessdate=2018-08-18}}</ref>に匹敵する一大事業の[[ランドマーク]]と位置づけている、アフリカでもっとも高いビルも建設予定である経済を担う[[中央業務地区]]を中国企業が請け負って[[2018年]]3月に着工した<ref>{{Cite news|url=http://www.xinhuanet.com/english/2017-10/12/c_136672905.htm|tile=Chinese firm finalizes deal for building huge business district in Egypt's new capital|work= amwalalghad|date=2017-10-12|accessdate=2018-07-28}}</ref><ref>{{Cite news|url=http://en.amwalalghad.com/china-to-build-egypt-africa-tallest-tower-in-new-capital-spokesperson/|tile=China to build Egypt-Africa tallest tower in new capital: spokesperson|work= amwalalghad|date=2018-06-28|accessdate=2018-06-29}}</ref><ref>{{Cite news|url=https://www.bloomberg.com/news/articles/2018-03-18/china-to-finance-majority-of-new-egypt-capital-s-tower-district|tile=China to Finance Majority of New Egypt Capital's Tower District|work= [[ブルームバーグ (企業)|ブルームバーグ]]|date=2018-03-18|accessdate=2018-07-28}}</ref><ref>{{Cite news|url= http://eg.mofcom.gov.cn/article/todayheader/201803/20180302720170.shtml|title=中建埃及新行政首都CBD项目开工仪式在开罗举行|work= 中華人民共和国駐エジプト大使館|date=2018-03-21|accessdate=2018-06-25}}</ref>。\n\nUAEや中国と破談した背景には通貨不安が存在する。2016年11月3日、エジプト中央銀行が[[変動相場制]]を採用すると発表した。エジプト・ポンドが売られるのを革命の影響だけで片付けるには、この不安は長引きすぎている。同行は6日後、国際金融機関から20億ドルの[[シャドー・バンキング・システム#レポ市場|レポ借入]]を始めた。4月に[[国際通貨基金]]からも120億ドルを借りている。エジプトは経済主権を失っている。[[ガーディアン]]が10月4日に報じたところでは、国際金融機関の[[バークレイズ]]がエジプト事業を[[ダノン#ワファバンク|ワファバンク]]に売却した。\n\n2017年末、政府が[[世界銀行]]に対し、エチオピアのダム事業を差し止めるように要請した。世銀は5月にエジプトへ10億ドルを追加融資しており、エジプトは厳しい立場にある。翌2018年1月中旬にエチオピアとの水紛争が妥協に至った。5月末にエジプトの対外債務累積額は829億ドルであった。9月、ムバラクの息子ら2人([[:en:Gamal Mubarak|Gamal]] and [[:en:Alaa Mubarak|Alaa]])がエジプトの株価を操作した疑いで逮捕された。\n\n== 政治 ==\n{{エジプトの政治}}\n{{Main2|詳細は{{仮リンク|エジプトの政治|en|Politics of Egypt|ar|السياسة في مصر}}および[[近代エジプトの国家元首の一覧]]}}\n\n=== 政体 ===\n[[共和制]]\n=== 大統領 ===\n[[国家元首]]の大統領は、立法・行政・司法の三権において大きな権限を有する。また国軍([[エジプト軍]])の[[総司令官|最高司令官]]でもある。大統領の選出は、[[直接選挙]]による。任期は4年で、三選禁止となった<ref>{{Cite journal|和書|author = 鈴木恵美|coauthors = |title = エジプト革命以後の新体制形成過程における軍の役割|journal = 地域研究|volume = 12|issue = 1|pages = 135-147|publisher = 京都大学地域研究統合情報センター|location = |date = 2012-03-28|language = |url = http://www.cias.kyoto-u.ac.jp/publish/?cat=4|jstor = |issn = 1349-5038 |isbn =978-4-8122-1178-6|doi = |id = |naid = |accessdate = 2012-06-17}}</ref>。最高大統領選挙委員会(The Supreme Presidential Election Commission, SPEC)委員長は、最高憲法裁判所長官が兼任していたが、現在は副長官がその任を負う。\n\n第2代大統領[[ガマール・アブドゥル=ナーセル]]以来、事実上の終身制が慣例で、第4代大統領[[ホスニー・ムバーラク]]は[[1981年]]の就任以来、約30年にわたって[[独裁]]体制を築いた。ムバーラクの[[親米]]・親[[イスラエル]]路線が欧米諸国によって評価されたために、独裁が見逃されてきた面がある。当時は任期6年、多選可。議会が候補者を指名し、国民は[[信任投票]]を行っていた。ただし、2005年は複数候補者による大統領選挙が実施された。\n\n[[2011年]]9月に大統領選が予定されていたが、2011年1月に騒乱状態となり、[[2月11日]]、ムバーラクは国民の突き上げを受ける形で辞任した。翌日より[[国防大臣]]で[[エジプト軍最高評議会|軍最高評議会]]議長の[[ムハンマド・フセイン・タンターウィー]]が元首代行を務め、それは[[2012年エジプト大統領選挙]]の当選者[[ムハンマド・ムルシー]]が[[6月30日]]に大統領に就任するまで続いた。2011年[[3月19日]]、[[憲法改正]]に関する[[国民投票]]が行われ、承認された<ref name=jpnmofa>{{Cite web|title = エジプト・アラブ共和国 基礎データ|work = 各国:地域情勢|publisher = 外務省(日本)|url = http://www.mofa.go.jp/mofaj/area/egypt/data.html|accessdate =2016-10-01}}</ref><ref>{{Cite web|title = エジプト基礎情報~政治・外交|work = エジプト情報|publisher = 在エジプト日本国大使館|date = 2011-07-30|url = http://www.eg.emb-japan.go.jp/j/egypt_info/basic/seiji.htm|accessdate =2016-10-01}}</ref>。\n\nしかしムルシー政権発足からわずか1年後の2013年、[[2013年エジプトクーデター|軍事クーデター]]が勃発。ムルシーは解任され、エジプトは再び軍による統治へと逆戻りした。2014年1月に再び憲法が修正され<ref name=jpnmofa />、同年5月の大統領選挙を経て再び民政へと復帰した。\n\n=== 議会 ===\n議会は、[[一院制]]の'''人民議会'''(マジュリス・アッ=シャアブ)。全508議席で、498議席は公選、10議席は大統領指名枠<ref>2011年12月現在では、定数498議席のうち、3分の2(332議席)が政党(連合)リストによる[[比例代表制]]で、3分の1(166議席)が[[小選挙区制]]で選出される</ref>。任期5年。これとは別に、'''諮問評議会'''(シューラ)が1980年設置されたが、立法権は有さない大統領の諮問機関である<ref>{{Cite web| author = 鈴木恵美\n | coauthors =\n | title = エジプト\n | work = 中東・イスラーム諸国の民主化\n | publisher = NIHU プログラム・イスラーム地域研究、東京大学拠点\n | date =\n | url = http://www.l.u-tokyo.ac.jp/~dbmedm06/me_d13n/database/egypt/egypt_all.html\n | format =\n | doi =\n | accessdate = 2012-06-15}}</ref>。全270議席で、180議席が公選、90議席が大統領指名枠。\n\n=== 選挙 ===\n2011年[[11月21日]]、[[イサーム・シャラフ]]暫定内閣は、デモと中央[[治安部隊]]の衝突で多数の死者が出たことの責任を取り軍最高評議会へ辞表を提出した。軍最高評議会議長タンターウィーは[[11月22日]]テレビで演説し、「28日からの人民議会選挙を予定通り実施し、次期大統領選挙を2012年6月末までに実施する」と表明した<ref>[http://www.asahi.com/special/meastdemo/TKY201111220122.html エジプト・シャラフ内閣が総辞職表明 デモの混乱で引責] 『朝日新聞』 2011年11月22日</ref><ref>[http://www.asahi.com/special/meastdemo/TKY201111230004.html エジプト軍議長「近く挙国一致内閣」とテレビ演説] 『朝日新聞』 2011年11月23日</ref><ref>[http://www.asahi.com/special/meastdemo/TKY201111250136.html エジプト軍議長、元首相に組閣要請 選挙管理内閣を想定] 『朝日新聞』 2011年11月25日</ref>。人民議会選挙は2011年[[11月28日]]から[[2012年]][[1月]]までに、行政区ごとに3回に分けて、また、投票日を1日で終わりにせず2日間をとり、大勢の投票での混乱を緩和し実施、諮問評議会選挙も[[3月11日]]までに実施された。また[[5月23日]]と[[5月24日|24日]]に[[2012年エジプト大統領選挙|大統領選挙]]の投票が実施された。\n\nしかし、[[6月14日]]に最高[[憲法裁判所]]が出した「現行の議会選挙法は違憲で無効(3分の1の議員について当選を無効と認定)」との判決を受け<ref>[http://www.asahi.com/international/reuters/RTR201206150031.html「エジプト議会選は無効」、憲法裁が大統領選直前に違法判断] 『朝日新聞』 2012年6月15日</ref><ref>[http://www.news24.jp/articles/2012/06/15/10207632.html エジプト議会、解散へ 大統領選にも影響か] [[日テレNEWS24]] 2012年6月15日</ref>、[[6月16日|16日]]までにタンターウィー議長は人民議会解散を命じた<ref>{{Cite news\n  | author = カイロ共同\n | title = エジプト、軍が議会に解散命令 憲法裁判所の判断で\n | newspaper = 47NEWS\n | location =\n | pages = 6\n | language =\n | publisher = 共同通信\n | date = 2012-06-18\n | url = http://www.47news.jp/CN/201206/CN2012061701001315.html\n | accessdate = 2012-06-18}}</ref>。大統領選挙の決選投票は6月16日と[[6月17日|17日]]に実施され、イスラム主義系の[[ムハンマド・ムルシー]]が当選した。\n\n=== 政党 ===\n{{main|エジプトの政党}}\n\n2011年3月28日に改正政党法が公表され、エジプトでは[[宗教]]を基盤とした[[政党]]が禁止された。そのため、[[ムスリム同胞団]](事実上の最大[[野党]]であった)などは非合法化され、初めての選挙(人民議会選挙)では、ムスリム同胞団を母体とする[[自由公正党]]({{lang-ar|حزب الحرية والعدالة}} - {{lang|en|Ḥizb Al-Ḥurriya Wal-'Adala}}, {{lang-en-short|Freedom and Justice Party}})が結成された。また、[[ヌール党]]([[サラフィー主義]]、イスラーム保守派)、[[新ワフド党]](エジプト最古の政党)、[[政党連合]]{{仮リンク|エジプト・ブロック|en|Egyptian Bloc}}(含む[[自由エジプト人党]](世俗派)、[[エジプト社会民主党]](中道左派)、[[国民進歩統一党]](左派))、[[ワサト党]]、{{仮リンク|政党連合革命継続|en|The Revolution Continues Alliance}}、{{仮リンク|アダラ党|en|Justice Party (Egypt)|label=公正党}}({{lang-ar|حزب العدل}} - {{lang|en|Hizb ElAdl}}, {{lang-en-short|Justice Party}}、今回の革命の中心を担った青年活動家による政党)など、全部で50以上の政党が参加していた<ref>{{Cite web\n | last =\n | first =\n | authorlink =\n | coauthors =\n | title = エジプト・アラブ共和国 基礎データ\n | work = 各国:地域情勢\n | publisher = 外務省(日本)\n | date =\n | url = http://www.mofa.go.jp/mofaj/area/egypt/data.html\n | format =\n | doi =\n | accessdate =2012-06-17 }}</ref><ref>{{Cite web\n | last =\n | first =\n | authorlink =\n | coauthors =\n | title = エジプト基礎情報~政治・外交\n | work = エジプト情報\n | publisher = 在エジプト日本国大使館\n | date = 2011-07-30\n | url = http://www.eg.emb-japan.go.jp/j/egypt_info/basic/seiji.htm\n | format =\n | doi =\n | accessdate =2012-06-17 }}</ref>。\n\n=== 政府 ===\n* {{仮リンク|エジプトの首相|en|Prime Minister of Egypt|label=首相}}・{{仮リンク|ムスタファ・マドブーリー|en|Moustafa Madbouly}} 2018年6月就任。\n* {{仮リンク|エジプトの国防大臣の一覧|en|List of Ministers of Defence of Egypt|label=国防大臣}}・{{仮リンク|セドキ・ソブヒィ|en|Sedki Sobhi}} 2014年3月就任、エジプト軍総司令官。\n\n== 司法 ==\n{{Main2|詳細は[[エジプトの法]]}}\n[[ナポレオン法典]]と[[イスラム法]]に基づく、混合した法システム<ref>{{Cite web|title = Egypt| publisher = CIA-The World Factbook| url = https://www.cia.gov/library/publications/the-world-factbook/geos/eg.html| accessdate = 2012-06-15}}</ref>。フランスと同じく、司法訴訟と行政訴訟は別の系統の裁判所が担当する。{{仮リンク|フランスにおける裁判所の二元性|fr|Dualité des ordres de juridiction en France}}参照。\n* {{仮リンク|最高憲法裁判所|en|Supreme Constitutional Court of Egypt}} - 法律が違憲か否かを判断する。1979年設立。長官はアドリー・マンスール(2013年7月1日 - )<ref>{{Cite web| title = Aperçu Historique | publisher = 最高憲法裁判所\n  | url =http://www.hccourt.gov.eg/About/history.asp\n | accessdate = 2013-08-27}}</ref>。ほか、10人の判事は1998年から2013年7月までに着任している<ref>{{Cite web| title = Current Members of the Court | publisher = 最高憲法裁判所\n | date =\n | url =http://www.hccourt.gov.eg/CourtMembers/CurrentCourt.asp\n | accessdate = 2013-08-27}}</ref>。長官は[[最高大統領選挙委員会]](The Supreme Presidential Election Commission, SPEC)の委員長を兼任していた<ref>{{Cite news\n | author = 貫洞欣寛\n| title = エジプト司法が逆襲 ムバラク裁判「判決批判許さん」\n | newspaper = 朝日新聞 | date = 2012-06-09\n | url = http://digital.asahi.com/articles/TKY201206080567.html?ref=comkiji_txt_end\n | accessdate = 2012-06-15}}</ref>が、2012年9月には副長官ハーティム・バガートゥーが務めていた<ref>{{Cite web\n | title = 中東要人講演会\n | newspaper = 中東調査会 | date =\n | url = http://www.meij.or.jp/members/20120903124551000000.pdf\n | accessdate = 2012-09-09}}</ref>。\n* [[司法省]]管轄の一般の[[裁判所]] - [[最高裁判所]]([[破毀院]]、1931年設立)と以下の[[下級裁判所]]([[控訴院]]、[[第一審]]裁判所、[[地区裁判所]]および[[家庭裁判所]] - 2004年設立)からなる。\n* [[国務院]]管轄の[[行政裁判所]] - [[コンセイユ・デタ]] - 1946年設立<ref>{{Cite web| title = Judiciary Authority| publisher = Egypt State Information Service\n| url =http://www.sis.gov.eg/En/Templates/Categories/tmpListArticles.aspx?CatID=248\n | accessdate = 2013-08-29}}</ref>。2011年[[2月19日]]、従来の[[政党委員会]](政府運営)の申請却下に対する不服申し立てを認めた形の判決で、[[政党]]の許認可<ref>{{Cite web| title = エジプトでイスラーム政党が認可 | work =[中東研ニュースリポート]| publisher = [[日本エネルギー経済研究所]] 中東研究センター| date = 2月21日\n | url =http://jime.ieej.or.jp/htm/extra/ronbun/003pol.htm\n | format =\n | doi =\n | accessdate = 2012-05-19}}</ref>を、[[4月16日]]、[[与党]]・[[国民民主党 (エジプト)|国民民主党]](NDP)の解散を裁定した。\n\n== 国際関係 ==\n{{main|{{仮リンク|エジプトの国際関係|en|Foreign relations of Egypt}}}}\n国力、文化的影響力などの面からアラブ世界のリーダーとなっている。ガマール・アブドゥル=ナーセル時代には[[非同盟諸国]]の雄としてアラブに限らない影響力を持ったが、ナーセル死後はその影響力は衰えた。ナーセル時代は親ソ連だった外交はサーダート時代に入って親米路線となり、さらにそれに伴いイスラエルとの外交関係が進展。1978年の[[キャンプ・デービッド合意]]とその翌年のイスラエル国交回復によって親米路線は確立したが、これはイスラエルを仇敵とするアラブ諸国の憤激を買い、ほとんどのアラブ諸国から断交されることとなった。その後、[[1981年]]にサーダートが暗殺されたあとに政権を握ったムバーラクは親米路線を堅持する一方、アラブ諸国との関係回復を進め、1988年には[[シリア]]、[[レバノン]]、[[リビア]]を除くすべてのアラブ諸国との関係が回復した<ref>『アフリカを知る事典』、平凡社、ISBN 4-582-12623-5 1989年2月6日 初版第1刷 p.58</ref>。以降はアラブの大国として域内諸国と協調する一方、アフリカの一国として2004年9月には[[国際連合安全保障理事会]]の[[常任理事国]]入りを目指すことを表明した。[[2011年]]、[[パレスチナ]]の[[ガザ]]の[[国境検問所|検問所]]を開放した。また、[[イラン]]との関係を修復しようとしている<ref>[http://www.asyura2.com/11/lunchbreak47/msg/284.html エジプト:ガザ、出入り自由に 検問所開放、外交転換鮮明に]</ref>。\n\nシーシー政権はムスリム同胞団政権時代のこうした外交政策とは一線を画している。欧米や日本、親米アラブ諸国、イスラエルのほか、中国や[[ロシア]]<ref>[https://www.nikkei.com/article/DGXMZO24487270R11C17A2FF2000/ 「ロシアが中東に接近 プーチン大統領、エジプトに軍事協力 米の中東政策の揺らぎつく」][[日本経済新聞]]ニュースサイト(2017年12月11日)2019年1月9日閲覧。</ref>などと広範な協力関係を築いている。\n\n[[2017年カタール外交危機]]では、サウジアラビアとともに、ムスリム同胞団を支援してきたカタールと[[国交]]を断絶した国のひとつとなった。またサウジアラビアとは、[[アカバ湾]]口に架橋して陸上往来を可能とするプロジェクトが話し合われた([[チラン島]]を参照)。\n\n=== 日本国との関係 ===\n{{Main|日本とエジプトの関係}}\n\n== 軍事 ==\n[[ファイル:Abrams in Tahrir.jpg|thumb|陸軍の主力戦車[[M1エイブラムス]]]]\n{{Main|エジプト軍}}\n中東有数の軍事大国であり、イスラエルと軍事的に対抗できる数少ないアラブ国家であると目されている。2010年11月見積もりの総兵力は46万8,500人。[[予備役]]47万9,000人。兵員数は[[陸軍]]34万人([[軍警察]]を含む)、[[海軍]]1万8,500人([[沿岸警備隊]]を含む)、[[空軍]]3万人、[[防空軍]]8万人<ref>{{Cite book\n | title = The Middle East and North Africa 2012\n | publisher = Routledge\n | edition = 58th\n | date = 2011\n | page = 380\n | isbn = 978-1-85743-626-6}}</ref>。内務省管轄の中央[[治安部隊]]、[[国境警備隊]]と国防省管轄の革命[[国家警備隊]](大統領[[親衛隊]])の[[準軍事組織]]が存在する。\n\nイスラエルとは4度にわたる[[中東戦争]]で毎回干戈を交えたが、[[第二次中東戦争]]で政治的な勝利を得、[[第四次中東戦争]]の緒戦で勝利を収めたほかは劣勢のまま終わっている。その後はイスラエルと接近し、シーシー政権下ではシナイ半島で活動する[[イスラム過激派]]([[ISIS]])に対する掃討作戦で、[[イスラエル空軍]]による[[爆撃]]を容認していることを公式に認めた<ref>[http://www.tokyo-np.co.jp/article/world/list/201901/CK2019010602000123.html 「対IS イスラエルと協力」エジプト大統領 治安重視]『[[東京新聞]]』朝刊2019年1月6日(国際面)2019年1月9日閲覧。</ref>。\n\n軍事的にはアメリカと協力関係にあるため、[[北大西洋条約機構]](NATO)のメンバーではないものの同機構とは親密な関係を保っている。また、ロシアや中国からも武器の供給を受けており、中露の主導する[[上海協力機構]]への参加も申請している<ref>{{Cite web|date=2015-07-11|url=http://jp.sputniknews.com/politics/20150710/556387.html|title=上海協力機構事務総長:機構はカラー革命など恐れていない|publisher=Sputnik 日本|accessdate=2019-08-18}}</ref><ref>{{Cite web|date=2015-07-27|url=http://arab.rbth.com/news/2015/07/27/30859.html|title=وزير الخارجية المصري: مصر لا تستبعد عضويتها في منظمة \"شنغهاي\" للتعاون في المستقبل | روسيا ما وراء العناوين|publisher=ロシアNOWアラビア語版|accessdate=2019-08-18}}</ref><ref>{{Cite web|date=2016-06-23|url=http://www.interfax.com/newsinf.asp?id=683491|title=Syria, Israel, Egypt willing to join SCO's activity - president's special envoy|publisher=[[インテルファクス通信]]|accessdate=2019-08-18}}</ref>。\n\n== 地方行政区画 ==\n[[ファイル:Governorates of Egypt.svg|thumb|right|280px|エジプトの行政区画]]\n{{Main|エジプトの県}}\nエジプトの最上級の地方行政単位は、29あるムハーファザ({{lang|ar|محافظة}}, '''県'''、'''州''' と訳されることもある)である。[[知事]]は中央政府から派遣される官選知事で、内務省の管轄下において中央集権体制をとる。極端な行政区分でナイル川流域やナイル下流は非常に細分化されているにもかかわらず、南部は非常に大まかに分けられている。これは、ナイル流域以外が全域砂漠であり、居住者がほとんどいないことによるものである。\n\n=== 主要都市 ===\n{{Main|エジプトの都市の一覧}}\n{{Main|エジプトの県}}\n{{Col-begin}}\n{{Col-break}}\n* [[アシュート]]\n* [[アスワン]]\n* [[マラウィー]]\n* [[アブ・シンベル]]\n* [[アレクサンドリア]]\n* [[イスマイリア]]\n* [[インバーバ]]\n* [[エスナ]]\n* [[エドフ]]\n* [[エル・アラメイン]]\n* [[カイロ]]\n{{Col-break}}\n* [[ケナ]]\n* [[ギーザ]]\n* [[コム・オンボ]]\n* [[ザガジグ]]\n* [[サッカラ]]\n* [[シャルム・エル・シェイク]]\n* [[スエズ]]\n* [[スブラエルケーマ]]\n* [[ソハーグ県|ソハーグ]]\n* [[ダマンフール]]\n* [[タンター]]\n{{Col-break}}\n* [[ディムヤート]]\n* [[ハルガダ]]\n* [[ファイユーム]]\n* [[ベニスエフ]]\n* [[ポートサイド]]\n* [[エル=マハッラ・エル=コブラ|マハッラ・クブラー]]\n* [[マンスーラ]]\n* [[ミニヤー県|ミニヤ]]\n* [[メンフィス (エジプト)]]\n* [[ルクソール]]\n* [[ロゼッタ (エジプト)|ロゼッタ]]\n{{Col-end}}\n<!-- 五十音順 -->\n\n== 地理 ==\n{{Main2|詳細は{{仮リンク|エジプトの地理|en|Geography of Egypt}}}}\n[[ファイル:Egypt Topography.png|thumb|200px|エジプトの地形図]]\n[[ファイル:Egypt 2010 population density1.png|thumb|200px|エジプトの人口分布図]]\n[[アフリカ大陸]]北東隅に位置し、国土面積は100万2,450㎢で、世界で30番目の大きさである。国土の95%は砂漠で、ナイル川の西側には[[サハラ砂漠]]の一部である西部砂漠([[リビア砂漠]])、東側には[[紅海]]と[[スエズ湾]]に接する[[東部砂漠]]({{lang|ar|الصحراء الشرقية}} - シャルキーヤ砂漠)がある。西部砂漠には海抜0m以下という地域が多く、面積1万8,000km<sup>2</sup>の広さをもつ[[カッターラ低地]]は海面より133mも低く、[[ジブチ]]の[[アッサル湖]]に次いでアフリカ大陸で2番目に低い地点である。[[シナイ半島]]の北部は砂漠、南部は山地になっており、エジプト最高峰の[[カテリーナ山]](2,637m)や、[[旧約聖書]]で[[モーセ]]が[[モーセの十戒|十戒]]を授かったといわれる[[シナイ山]](2,285m)がある。シナイ半島とナイル河谷との間は[[スエズ湾]]が大きく湾入して細くくびれており、ここが[[アフリカ大陸]]と[[ユーラシア大陸]]の境目とされている。この細い部分は低地であるため、[[スエズ運河]]が建設され、紅海と地中海、ひいてはヨーロッパとアジアを結ぶ大動脈となっている。\n[[ファイル:S F-E-CAMERON 2006-10-EGYPT-LUXOR-0439.JPG|thumb|left|200px|[[ナイル川]]]]\n[[ナイル川]]は南隣の[[スーダン]]で[[白ナイル川]]と[[青ナイル川]]が合流し、エジプト国内を南北1,545Kmにもわたって北上し、河口で広大な[[三角州|デルタ]]を形成して[[地中海]]にそそぐ。[[アスワン]]以北は人口稠密な河谷が続くが、幅は5Kmほどとさほど広くない。上エジプト中部のキーナでの湾曲以降はやや幅が広がり<ref>『朝倉世界地理講座 アフリカI』初版所収「ナイル川の自然形態」春山成子、2007年4月10日(朝倉書店)p198</ref>、[[アシュート]]近辺で分岐の支流が[[ファイユーム]]近郊の[[モエリス湖|カールーン湖]]({{lang|ar|Birket Qarun}}、かつての[[モエリス湖]])へと流れ込む。この支流によって、カールーン湖近辺は肥沃な{{仮リンク|ファイユーム・オアシス|en|Faiyum Oasis}}を形成している。一方、本流は、[[カイロ]]近辺で典型的な扇状三角州となる'''[[ナイル・デルタ]]'''は、地中海に向かって約250Kmも広がっている。かつてはナイル川によって運ばれる土で、デルタ地域は国内でもっとも肥沃な土地だったが、[[アスワン・ハイ・ダム]]によってナイル川の水量が減少したため、地中海から逆に塩水が入りこむようになった。ナイル河谷は、古くから[[下エジプト]]と[[上エジプト]]という、カイロを境にした2つの地域に分けられている。前者はデルタ地域を指し、後者はカイロから上流の谷を指している。ナイル河谷は、世界でももっとも[[人口密度]]の高い地域のひとつである。\n\nナイル河谷以外にはほとんど人は住まず、わずかな人が[[オアシス]]に集住しているのみである。乾燥が激しく地形がなだらかなため、特にリビア砂漠側には[[ワジ]](涸れ川)が全くない。[[シワ・オアシス|シーワ]]、[[ファラフラ (エジプト)|ファラーフラ]]、[[ハルガ]]、バハレイヤ、ダフラといった[[オアシス]]が点在している<ref>『ミリオーネ全世界事典』第10巻 アフリカI([[学習研究社]]、1980年11月)p206</ref>。ナイル以東のシャルキーヤ砂漠は地形がやや急峻であり、ワジがいくつか存在する。紅海沿岸も降雨はほとんどないが、ナイルと[[アラビア半島]]を結ぶ重要な交通路に位置しているため、いくつかの小さな港が存在する。\n\n=== 国境 ===\n1885年に列強が[[ドイツ]]の[[ベルリン]]で開いた会議で、それまでに植民地化していたアフリカの分割を確定した。リビア国境の大部分で[[東経25度線|東経25度]]に、スーダンでは[[北緯22度線|北緯22度]]に定めたため、国境が直線的である。\n\nスーダンとの間では、エジプトが[[実効支配]]する[[ハラーイブ・トライアングル]]に対してスーダンも領有権を主張している。一方、その西にある[[ビル・タウィール]]は両国とも領有権を主張していない[[無主地]]である。\n\n=== 気候 ===\n{{Main2|詳細は{{仮リンク|エジプトの気候|en|Climate of Egypt}}}}\n国土の全域が[[砂漠気候]]で人口はナイル河谷および[[デルタ地帯]]、[[スエズ運河]]付近に集中し、国土の大半は[[サハラ砂漠]]に属する。夏には日中の気温は40℃を超え、50℃になることもある。降雨はわずかに[[地中海|地中海岸]]にあるにすぎない。冬の平均気温は下エジプトで13 - 14℃、上エジプトで16℃程度である。2013年12月にはカイロ市内でも降雪・積雪があったが、観測史上初ということで注目された。\n\n== 経済 ==\n{{Main2|詳細は{{仮リンク|エジプトの経済|en|Economy of Egypt}}}}\n[[ファイル:View from Cairo Tower 31march2007.jpg|thumb|left|220px|カイロはビジネス、文化、政治などを総合評価した[[世界都市#世界と指数|世界都市格付け]]でアフリカ第1位の都市と評価された<ref>[http://www.atkearney.com/documents/10192/4461492/Global+Cities+Present+and+Future-GCI+2014.pdf/3628fd7d-70be-41bf-99d6-4c8eaf984cd5 2014 Global Cities Index and Emerging Cities Outlook] (2014年4月公表)</ref>]]\n\n2018年のエジプトの[[GDP]]は約2,496億ドル(約27兆円)、一人当たりでは2,573ドルである<ref name=\"economy\" />。アフリカでは屈指の経済規模であり、[[BRICs]]の次に経済発展が期待できるとされている[[NEXT11]]の一国にも数えられている。しかし、一人当たりのGDPでみると、中東や北アフリカ諸国の中では、最低水準であり、[[トルコ]]の約4分の1、[[イラン]]の半分に過ぎず、更に同じ北アフリカ諸国である[[チュニジア]]や[[モロッコ]]に比べても、水準は低い<ref name=\"エジプト経済の現状と今後の展望\" >{{Cite report|author=堀江 正人|date=2019-01-08|title=エジプト経済の現状と今後の展望 ~経済の復調が注目される中東北アフリカの大国エジプト~|url=https://www.murc.jp/report/economy/analysis/research/report_190108/|publisher=[[三菱UFJリサーチ&コンサルティング|三菱UFJリサーチ&コンサルティング株式会社]]|accessdate=2020-02-03}}</ref>。\n\n[[スエズ運河]]収入と[[観光産業]]収入、更には在外労働者からの送金の3大外貨収入の依存が大きく、エジプト政府は、それらの手段に安易に頼っている<ref name=\"エジプト経済の現状と今後の展望\" />。更に政情に左右されやすい。\n\nかつては[[綿花]]の世界的生産地であり、ナイル川のもたらす肥沃な土壌とあいまって農業が重要な役割を果たしていた。しかし、通年灌漑の導入によってナイルの洪水に頼ることが減り、アスワン・ハイ・ダムの建設によって、上流からの土壌がせき止められるようになった。そのため、ダムによる水位コントロールによって農地が大幅に拡大した。農業生産高が格段に上がったにもかかわらず、[[肥料]]の集中投入などが必要になったため、コストが増大し、近年代表的な農業製品である綿製品は価格競争において後塵を拝している。\n\n[[1970年代]]に農業の機械化および各種生産業における機械への転換により、地方での労働力の過剰供給が見受けられ、労働力は都市部に流出し、治安・衛生の悪化及び社会政策費の増大を招いた。80年代には、[[石油]]産業従事者の増大に伴い、農業において労働力不足が顕著となる。このため綿花および綿製品の価格上昇を招き、国際競争力を失った。1990年代から、[[国際通貨基金|IMF]]の支援を受け経済成長率5%を達成するが、社会福祉政策の低所得者向け補助の増大および失業率10%前後と支出の増大に加え、資源に乏しく食料も輸入に頼るため、2004年には物価上昇率10%に達するなどの構造的問題を抱えている。現状、中小企業育成による国際競争力の強化、雇用創生に取り組んでいるが、結果が出ていない。[[2004年]]のナズィーフ内閣が成立後は、国営企業の民営化および税制改革に取り組んでいる。[[2008年]]、世界的な食料高騰によるデモが発生した。\n\nまた、「[[アラブの春]]」により、2012年~2014年の間は2~3%台と一時低迷していたが、その後政情の安定化により、2015年には、4%台に回復している。また[[IMF]]の勧告を受け、2016年に[[為替相場]]の大幅切り下げや[[補助金]]削減などの改革をしたことで、経済健全化への期待感より、外国からの資本流入が拡大していき、経済の復調を遂げている<ref name=\"エジプト経済の現状と今後の展望\" />。\n\n農業は農薬などを大量に使っているため世界一コストの高い農業となっているがそれなりの自給率を保っているし果物は日本にもジャムなどに加工され輸出されている。工業は石油などの資源はないが様々な工業が発展しており今後も成長が見込まれる。近年IT IC産業が急速に成長している。\nしかしながらGDPの約半分が軍関連企業が占めていて主に農業 建築業などの工業を担っている。\n金融はイスラーム銀行も近代式銀行の両方とも発達しており投資家層も厚くトランプ政権にはエジプトの敏腕女性投資家が起用されている。\n\n== 交通 ==\n{{Main|エジプトの交通}}\nエジプトの交通の柱は歴史上常に[[ナイル川]]であった。[[アスワン・ハイ・ダム]]の建設後、ナイル川の流れは穏やかになり、交通路として安定性が増した。しかし貨物輸送はトラック輸送が主となり、内陸水運の貨物国内シェアは2%にすぎない。[[ファルーカ]]という伝統的な[[帆船]]や、観光客用のリバークルーズなどの運航もある。\n\n[[鉄道]]は、国有の[[エジプト鉄道]]が運営している。営業キロは5,063キロにのぼり、カイロを起点として[[ナイル川デルタ]]や[[ナイル河谷]]の主要都市を結んでいる。\n\n航空は、[[フラッグ・キャリア]]である[[エジプト航空]]を筆頭にいくつもの航空会社が運行している。[[カイロ国際空港]]はこの地域の[[ハブ空港]]の一つである。\n\n== 国民 ==\n{{Main2|詳細は{{仮リンク|エジプトの人口統計|en|Demographics of Egypt}}}}\n[[ファイル:Cairo mosques.jpg|thumb|left|220px|[[カイロ]]の[[モスク]]]]\n=== 人口構成 ===\n[[ファイル:Egypt population pyramid 2005.svg|thumb|[[2005年]]の人口ピラミッド。30歳以下の若年層が非常に多く、若者の失業が深刻な問題となっている]]\n[[ファイル:Egypt demography.png|thumb|400px|[[国際連合食糧農業機関]]の2005年データによるエジプト人口の推移。1960年の3,000万人弱から人口が急増しているのが読み取れる]]\nエジプトの人口は8,254万人(2013年1月現在)で、近年急速に増大し続けている。年齢構成は0から14歳が33%、15から64歳が62.7%、65歳以上が4.3%(2010年)で、若年層が非常に多く、ピラミッド型の人口構成をしている。しかし、若年層はさらに増加傾向にあるにもかかわらず、経済はそれほど拡大していないため、若者の[[失業]]が深刻な問題となっており、[[2011年エジプト騒乱]]の原因のひとつともなった。年齢の中央値は24歳である。人口増加率は2.033%。\n\n=== 民族 ===\n{{See also|エジプト民族}}\n住民は[[ムスリム|イスラム教徒]]と[[キリスト教徒]]([[コプト教会]]、[[東方正教会]]など)からなる[[アラブ人]]がほとんどを占め、そのほかに[[ベドウィン]](遊牧民)や[[ベルベル人]]、{{仮リンク|ヌビア人|en|Nubian people}}、[[アルメニア人]]、[[トルコ人]]、[[ギリシア人]]などがいる。遺伝的に見れば、エジプト住民のほとんどが古代エジプト人の直系であり、[[エジプト民族]]との呼称でも呼ばれる所以である。また、エジプト人の大半は、イスラム勢力のエジプト征服とそれに続くイスラム系国家の統治の間に言語学的にアラブ化し、本来のエジプト語を捨てた人々であるとする見解がある。それだけではなく、長いイスラーム統治時代の人的交流と都市としての重要性から、多くのアラブ人が流入・定住していったのも事実である。1258年にアッバース朝が崩壊した際、[[カリフ]]周辺を含む多くの人々がエジプト(おもにカイロ近郊)へ移住したという史実は、中東地域一帯における交流が盛んであったことを示す一例である。現代においてカイロは[[世界都市]]となっており、また歴史的にも[[アル=アズハル大学]]は、イスラム教[[スンナ派]]で最高権威を有する教育機関として、中東・イスラム圏各地から人々が参集する。\n\nなお[[古代エジプト]]文明の印象があまりに大きいためか、特に現代エジプトに対する知識を多く持たない人は、現代のエジプト人を古代エジプト人そのままにイメージしていることが多い。すなわち、[[ギザの大スフィンクス]]や[[ギザの大ピラミッド]]を建て、太陽神やさまざまな神を信仰([[エジプト神話]])していた古代エジプト人を、現代のエジプト人にもそのまま当てはめていることが多い。しかし、上述のとおり現代エジプト人の9割はイスラム教徒であり、アラビア語を母語とするアラブ人である。それもアラブ世界の中で比較的主導的な立場に立つ、代表的なアラブ人のひとつである。\n\n=== 言語 ===\n{{Main2|詳細は{{仮リンク|エジプトの言語|en|Languages of Egypt}}}}\n現在のエジプトでは[[アラビア語]]が[[公用語]]である。これは、イスラムの征服当時にもたらされたもので、エジプトのイスラム化と同時に普及していった。ただし、公用語となっているのは[[正則アラビア語]](フスハー)だが、実際に用いられているのは[[アラビア語エジプト方言]]である{{要出典|date=2012年8月}}<!-- 実際に「通用」の意味か? 行政等の用語は? -->。\n\n古代エジプトの公用語であった[[エジプト語]](4世紀以降の近代エジプト語は[[コプト語]]の名で知られる)は、現在では少数のキリスト教徒が典礼言語として使用するほかはエジプトの歴史に興味を持つ知識層が学んでいるだけであり、これを話せる国民はきわめて少ない。日常言語としてコプト語を使用する母語話者は数十名程度である<ref>[http://www.dailystaregypt.com/article.aspx?ArticleID=106 The Dairy Star of Egypt 2007年1月23日]</ref>。他には地域的に[[ヌビア諸語]]、[[教育]]・[[ビジネス]]に[[英語]]、[[文化_(代表的なトピック)|文化]]においては[[フランス語]]なども使われている。\n\n=== 宗教 ===\n{{Main2|詳細は{{仮リンク|エジプトの宗教|en|Religion in Egypt}}}}\n{{bar box\n|title=宗教構成(エジプト)\n|titlebar=#ddd\n|width= 300px\n|float=right\n|bars=\n{{bar percent|イスラム教(スンナ派)|green|90}}\n{{bar percent|キリスト教その他|blue|10}}\n}}\n宗教は[[イスラム教]]が90%(ほとんどが[[スンナ派]])であり、[[憲法]]では[[国教]]に指定されている(既述の通り、現在では宗教政党の活動ならびにイスラム主義活動は禁止されている)<ref name=2010cia/>。その他の宗派では、エジプト土着の[[キリスト教会]]である[[コプト教会]]の信徒が9%、その他のキリスト教徒が1%となる<ref name=2010cia/>。\n\n=== 婚姻 ===\n多くの場合、婚姻時に女性は改姓しない([[夫婦別姓]])が、改姓する女性もいる<ref>[https://culturalatlas.sbs.com.au/egyptian-culture/naming-9bdb9e00-ffa6-4f6f-9b29-1616ec7bb952#naming-9bdb9e00-ffa6-4f6f-9b29-1616ec7bb952 Egyptian Culture], Cultural Atlas.</ref>。\n\n=== 教育 ===\n{{Main2|詳細は{{仮リンク|エジプトの教育|en|Education in Egypt}}}}\n[[ファイル:Bibalex-egypt.JPG|thumb|180px|[[新アレクサンドリア図書館]]]]\nエジプトの教育制度は、1999年から[[小学校]]の課程が1年延び、日本と同じく小学校6年・[[中学校]]3年・[[高等学校|高校]]3年・[[大学]]4年の6・3・3・4制となっている<ref>[http://www.mofa.go.jp/mofaj/toko/world_school/07africa/infoC70400.html 諸外国の学校情報(国の詳細情報) 日本国外務省]</ref>。[[義務教育]]は小学校と中学校の9年である。[[1923年]]のエジプト独立時に初等教育はすでに無料とされ、以後段階的に無料教育化が進み、[[1950年]]には著名な作家でもあった文部大臣[[ターハー・フセイン]]によって中等教育が無料化され、1952年のエジプト革命によって高等教育も含めたすべての公的機関による教育が無料化された。しかし、公立学校の[[教員]]が給料の少なさなどから個人の[[家庭教師]]を兼任することが広く行われており、社会問題化している<ref>[http://www.fukuoka-pu.ac.jp/kiyou/kiyo15_1/1501_tanaka.pdf 『福岡県立大学人間社会学部紀要』 田中哲也]</ref>。高額な授業料を取る代わりに教育カリキュラムの充実した私立学校も多数存在する。エジプト国内には、20万以上の小中学校、1,000万人以上の学生、13の主要大学、67の[[師範学校]]がある。\n\n[[2018年]]より「エジプト日本学校(EJS=Egypt-Japan School)」が35校、開校した<ref>[https://www.jica.go.jp/publication/mundi/1904/201904_03_01.html 「日本式教育」で、子どもたちが変わる! エジプト]</ref>\n<ref>[https://www.jica.go.jp/press/2018/20181004_01.html 「エジプト・日本学校」35校が開校:日本式教育をエジプトへ本格導入]</ref>。これは2017年に[[JICA]]が技術協力「学びの質向上のための環境整備プロジェクト」を開始ししたことに始まるもので、[[日本の学校教育]]で行われている[[学級会]]や生徒による清掃などをエジプトの教育に取り入れようとする教育方針である<ref>[https://www.nippon.com/ja/japan-topics/g00727/ エジプトの小学校に「日本式教育」、協調性など成果も]</ref>。試験的に導入した際には文化的な違いから反発も見受けられたが、校内での暴力が減った、子供が家でも掃除をするようになったなど、徐々に成果が見えるようになり本格的に導入されることになった<ref>[https://www.huffingtonpost.jp/entry/egypt-japan-school_jp_5cdba4c0e4b0c39d2a13534f 「日本式教育」はエジプトの教育現場をどう変えたか。「掃除は社会階層が低い人が行うもの」という反発を乗り越えて]</ref><ref>[https://egyptcesbtokyo.wordpress.com/2018/10/10/「エジプト・日本学校」について/ 「エジプト・日本学校」(EJS)について]</ref>。\n\n2005年の推計によれば、15歳以上の国民の[[識字率]]は71.4%(男性:83%、女性:59.4%)である<ref name=2010cia>[https://www.cia.gov/library/publications/the-world-factbook/geos/za.html CIA World Factbook \"Egypt\"]2010年1月31日閲覧。</ref>。2006年にはGDPの4.2%が教育に支出された<ref name=2010cia/>。\n\nおもな高等教育機関としては、[[アル=アズハル大学]](988年 p? )、[[吉村作治]]、[[小池百合子]]らが出身の[[カイロ大学]](1908年~)などが存在する。\n\n国立図書館として[[新アレクサンドリア図書館]]が存在する。\n\n== 文化 ==\n[[ファイル:Necip Mahfuz.jpg|thumb|[[ナギーブ・マフフーズ]]は[[1988年]]に[[ノーベル文学賞]]を受賞した]]\n{{Main2|詳細は{{仮リンク|エジプトの文化|en|Culture of Egypt}}}}\n\n* [[古代エジプト]]の建造物で有名。\n* [[ボードゲーム]]や[[カードゲーム]]の発祥の地としても知られている。\n* 座った時に足を組むと、相手に敵意があると受けとられる。\n\n=== 食文化 ===\n{{Main|エジプト料理}}\n\n=== 文学 ===\n{{Main|古代エジプト文学|アラビア語文学|エジプト文学}}\n古代エジプトにおいては[[パピルス]]に[[ヒエログリフ]]で創作がなされ、[[古代エジプト文学]]には『[[死者の書 (古代エジプト)|死者の書]]』や『[[シヌヘの物語]]』などの作品が現代にも残っている。7世紀にアラブ化したあともエジプトは[[アラビア語文学]]のひとつの中心地となった。近代の文学者として[[ターハー・フセイン]]の名が挙げられ、現代の作家である[[ナギーブ・マフフーズ]]は1988年に[[ノーベル文学賞]]を受賞している。\n{{clear}}\n\n=== スポーツ ===\n* [[サッカーエジプト代表]]の[[モハメド・サラー]]は[[プレミアリーグ]]で得点王、[[PFA年間最優秀選手賞]]を獲得、[[UEFAチャンピオンズリーグ 2018-19|2018-19シーズン]]に[[UEFAチャンピオンズリーグ]]優勝を果たした。\n* [[スカッシュ (スポーツ)|スカッシュ]]では[[21世紀]]に入ってからワールドオープン([[:en:World Squash Championships]])で男女ともに多くの優勝者を輩出している。\n\n=== 世界遺産 ===\n{{Main|エジプトの世界遺産}}\nエジプト国内には、[[国際連合教育科学文化機関|ユネスコ]]の[[世界遺産]]リストに登録された文化遺産が6件、自然遺産が1件登録されている。\n\n<gallery widths=\"180\" heights=\"120\">\nファイル:Egypt.Giza.Sphinx.01.jpg|[[メンフィスとその墓地遺跡|メンフィスとその墓地遺跡-ギーザからダハシュールまでのピラミッド地帯]](1979年、文化遺産)\nファイル:S F-E-CAMERON 2006-10-EGYPT-KARNAK-0002.JPG|古代都市[[テーベ]]とその墓地遺跡(1979年、文化遺産)\nファイル:Abou simbel face.jpg|[[アブ・シンベル]]から[[フィラエ]]までの[[ヌビア遺跡]]群(1979年、文化遺産)\nファイル:Al Azhar, Egypt.jpg|[[カイロ|カイロ歴史地区]](1979年、文化遺産)\nファイル:Katharinenkloster Sinai BW 2.jpg|* [[聖カタリナ修道院|聖カトリーナ修道院地域]](2002年、文化遺産)\nファイル:Whale skeleton 2.jpg|[[ワディ・アル・ヒタン]](2005年、自然遺産)\n</gallery>\n\n== 参考文献 ==\n*鈴木恵美編著『現代エジプトを知るための60章』、[[明石書店]]、2012年 ISBN 4750336483\n{{節スタブ}}\n\n== 脚注 ==\n{{脚注ヘルプ}}\n{{Reflist|2}}\n\n== 関連項目 ==\n* [[エジプト民族]]\n* [[エジプト美術]]\n* [[エジプト神話]]\n* [[エジプト軍]]\n* [[エジプト海軍艦艇一覧]]\n* [[エジプト革命 (2011年)]]\n* [[エジプトの法]]\n* [[エジプト関係記事の一覧]]\n\n== 外部リンク ==\n{{Wiktionary}}\n{{Commons&cat|Egypt|Egypt}}\n{{Wikivoyage|Egypt|エジプト{{en icon}}}}\n{{osm box|r|1473947}}\n{{ウィキポータルリンク|アフリカ|[[画像:Africa_satellite_orthographic.jpg|36px|ウィキポータルリンク アフリカ]]}}\n; 政府\n:* [http://www.egypt.gov.eg/arabic/home.aspx エジプト政府サービス・ポータル] {{ar icon}}\n:* [http://www.egypt.gov.eg/english/home.aspx エジプト政府サービス・ポータル] {{en icon}}\n:* [http://www.egypt.or.jp/.html 在日エジプト大使館 エジプト学・観光局] - 「観光情報」と「基本情報」{{ja icon}}\n:\n; 日本政府\n:* [https://www.mofa.go.jp/mofaj/area/egypt/ 日本外務省 HP>各国・地域情勢>アフリカ>エジプト・アラブ共和国] {{ja icon}}\n:* [https://www.eg.emb-japan.go.jp/itprtop_ja/.html 在エジプト日本国大使館] {{ja icon}}\n:** [https://www.eg.emb-japan.go.jp/itpr_ja/00_000035.html 在エジプト日本国大使館>エジプト情報]\n:\n; その他\n:* [https://www.jica.go.jp/.html 独立行政法人 JICA 国際協力機構]\n:** [https://www.jica.go.jp/egypt/ HP>各国における取り組み>中東>エジプト生活情報]\n:** [https://libportal.jica.go.jp/fmi/xsl/library/public/ShortTermStayInformation/MiddleEast/Egypt-Short.pdf HP>世界の現状を知る>世界の様子(国別生活情報)>中東>エジプト短期滞在者用国別情報(2011)]\n:* [https://www.jetro.go.jp/world/africa/eg/ 独立行政法人 JETRO 日本貿易振興機構 HP>海外ビジネス情報>国・地域別情報>アフリカ>エジプト]\n:* [https://www.jccme.or.jp/08/08-07-08.html 財団法人 JCCME 中東協力センター HP>中東各国情報>エジプト]\n:* [https://wikitravel.org/ja/%E3%82%A8%E3%82%B8%E3%83%97%E3%83%88 ウィキトラベル旅行ガイド - エジプト] {{ja icon}}\n:* {{Wikiatlas|Egypt}} {{en icon}}\n:* {{CIA World Factbook link|eg|Egypt}} {{en icon}}\n:* {{dmoz|Regional/Africa/Egypt}} {{en icon}}\n\n{{アフリカ}}\n{{アジア}}\n{{OIC}}\n{{OIF}}\n{{NATOに加盟していない米国の同盟国}}\n{{Authority control}}\n{{Coord|30|2|N|31|13|E|type:city|display=title}}\n\n{{デフォルトソート:えしふと}}\n[[Category:エジプト|*]]\n[[Category:共和国]]\n[[Category:軍事政権]]\n[[Category:フランコフォニー加盟国]]"}
20. JSON データの読み込み

Wikipedia記事のJSONファイルを読み込み,「イギリス」に関する記事本文を表示せよ.問題21-29では,ここで抽出した記事本文に対して実行せよ.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import json

filename = 'jawiki-country.json'
with open(filename, mode='r') as f:
    for line in f:
        line = json.loads(line)
        if line['title'] == 'イギリス':
            text_uk = line['text']
            break


### 確認
print(text_uk)
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
{{redirect|UK}}
{{redirect|英国|春秋時代の諸侯国| (春秋)}}
{{Otheruses|ヨーロッパの国|長崎県熊本県の郷土料理|いぎりす}}
{{基礎情報 |略名  =イギリス
|日本語国名 = グレートブリテン及び北アイルランド連合王国
|公式国名 = {{lang|en|United Kingdom of Great Britain and Northern Ireland}}<ref>英語以外での正式国名:<br />
*{{lang|gd|An Rìoghachd Aonaichte na Breatainn Mhòr agus Eirinn mu Thuath}}[[スコットランドゲール語]]
*{{lang|cy|Teyrnas Gyfunol Prydain Fawr a Gogledd Iwerddon}}[[ウェールズ語]]
*{{lang|ga|Ríocht Aontaithe na Breataine Móire agus Tuaisceart na hÉireann}}[[アイルランド語]]
*{{lang|kw|An Rywvaneth Unys a Vreten Veur hag Iwerdhon Glédh}}[[コーンウォール語]]
*{{lang|sco|Unitit Kinrick o Great Breetain an Northren Ireland}}[[スコットランド語]]
**{{lang|sco|Claught Kängrick o Docht Brätain an Norlin Airlann}}{{lang|sco|Unitet Kängdom o Great Brittain an Norlin Airlann}}アルスタースコットランド語</ref>
|国旗画像 = Flag of the United Kingdom.svg
|国章画像 = [[ファイル:Royal Coat of Arms of the United Kingdom.svg|85px|イギリスの国章]]
|国章リンク =[[イギリスの国章|国章]]
|標語 = {{lang|fr|[[Dieu et mon droit]]}}<br />[[フランス語]]:[[Dieu et mon droit|神と我が権利]]
|国歌 = [[女王陛下万歳|{{lang|en|God Save the Queen}}]]{{en icon}}<br />''神よ女王を護り賜え''<br />{{center|[[ファイル:United States Navy Band - God Save the Queen.ogg]]}}
|地図画像 = Europe-UK.svg
|位置画像 = United Kingdom (+overseas territories) in the World (+Antarctica claims).svg
|公用語 = [[英語]]
|首都 = [[ロンドン]]事実上
|最大都市 = ロンドン
|元首等肩書 = [[イギリスの君主|女王]]
|元首等氏名 = [[エリザベス2世]]
|首相等肩書 = [[イギリスの首相|首相]]
|首相等氏名 = [[ボリスジョンソン]]
|他元首等肩書1 = [[貴族院 (イギリス)|貴族院議長]]
|他元首等氏名1 = [[:en:Norman Fowler, Baron Fowler|ノーマンファウラー]]
|他元首等肩書2 = [[庶民院 (イギリス)|庶民院議長]]
|他元首等氏名2 = {{仮リンク|リンゼイホイル|en|Lindsay Hoyle}}
|他元首等肩書3 = [[連合王国最高裁判所|最高裁判所長官]]
|他元首等氏名3 = [[:en:Brenda Hale, Baroness Hale of Richmond|ブレンダヘイル]]
|面積順位 = 76
|面積大きさ = 1 E11
|面積値 = 244,820
|水面積率 = 1.3%
|人口統計年 = 2018
|人口順位 = 22
|人口大きさ = 1 E7
|人口値 = 6643万5600<ref>{{Cite web|url=https://www.ons.gov.uk/peoplepopulationandcommunity/populationandmigration/populationestimates|title=Population estimates - Office for National Statistics|accessdate=2019-06-26|date=2019-06-26}}</ref>
|人口密度値 = 271
|GDP統計年元 = 2012
|GDP値元 = 1兆5478億<ref name="imf-statistics-gdp">[http://www.imf.org/external/pubs/ft/weo/2012/02/weodata/weorept.aspx?pr.x=70&pr.y=13&sy=2010&ey=2012&scsm=1&ssd=1&sort=country&ds=.&br=1&c=112&s=NGDP%2CNGDPD%2CPPPGDP%2CPPPPC&grp=0&a=IMF>Data and Statistics>World Economic Outlook Databases>By Countrise>United Kingdom]</ref>
|GDP統計年MER = 2012
|GDP順位MER = 6
|GDP値MER = 2兆4337億<ref name="imf-statistics-gdp" />
|GDP統計年 = 2012
|GDP順位 = 6
|GDP値 = 2兆3162億<ref name="imf-statistics-gdp" />
|GDP/ = 36,727<ref name="imf-statistics-gdp" />
|建国形態 = 建国
|確立形態1 = [[イングランド王国]][[スコットランド王国]]<br />両国とも[[合同法 (1707年)|1707年合同法]]まで
|確立年月日1 = 927843|確立形態2 = [[グレートブリテン王国]]成立<br />1707年合同法
|確立年月日2 = 1707年{{0}}5月{{0}}1|確立形態3 = [[グレートブリテン及びアイルランド連合王国]]成立<br />[[合同法 (1800年)|1800年合同法]]
|確立年月日3 = 1801年{{0}}1月{{0}}1|確立形態4 = 現在の国号「'''グレートブリテン及び北アイルランド連合王国'''」に変更
|確立年月日4 = 1927年{{0}}4月12日
|通貨 = [[スターリングポンド|UKポンド]] (£)
|通貨コード = GBP
|時間帯 = ±0
|夏時間 = +1
|ISO 3166-1 = GB / GBR
|ccTLD = [[.uk]] / [[.gb]]<ref>使用は.ukに比べ圧倒的少数</ref>
|国際電話番号 = 44
|注記 = <references/>
}}

'''グレートブリテン及び北アイルランド連合王国'''(グレートブリテンおよびきたアイルランドれんごうおうこく{{lang-en-short|United Kingdom of Great Britain and Northern Ireland}}: '''UK''')[[ヨーロッパ大陸]]の北西岸に位置し[[グレートブリテン島]][[アイルランド島]]北東部その他多くの島々から成る[[立憲君主制]][[国家]]首都は[[ロンドン]][[日本語]]における[[通称]]の一例として'''イギリス'''、'''英国'''(えいこくがある(→[[#国名]])。

'''[[イングランド]]'''、'''[[ウェールズ]]'''、'''[[スコットランド]]'''、'''[[北アイルランド]]'''という歴史的経緯に基づく4つの[[イギリスのカントリー|カントリーと呼ばれる]]が[[同君連合]]型の単一の[[主権国家体制|主権国家]]を形成する<ref name="page823">{{cite web |url=http://webarchive.nationalarchives.gov.uk/+/http://www.number10.gov.uk/Page823 |title=Countries within a country |publisher=Prime Minister's Office |accessdate=10 January 2003}}</ref>独特の統治体制を採るが、一般的に[[連邦]]国家とは区別される。

[[国際連合安全保障理事会常任理事国]]の一国五大国であり[[G7]][[G20]]に参加するGDPは世界10位以内に位置する巨大な市場を持ちヨーロッパにおける四つの大国[[ビッグ4 (ヨーロッパ)|ビッグ4]]の一国である[[ウィーン体制]]が成立した[[1815年]]以来世界で最も影響力のある国家[[列強]]の一つに数えられるまた[[民主主義]][[立憲君主制]]など近代国家の基本的な諸制度が発祥した国でもある

イギリスの[[擬人化]]としては[[ジョンブル]][[ブリタニア (女神)|ブリタニア]]が知られる

==国名==
正式名称は英語で{{Lang|en|'''United Kingdom of Great Britain and Northern Ireland'''}}ユナイテッドキングダムオヴグレイトブリテンアンドノーザンアイルランド)」であり日本語では、「'''グレートブリテン及び北部アイルランド連合王国'''」とする場合法文など「'''グレートブリテン及び北アイルランド連合王国'''」とする場合条約文などがある

英語での略称は{{Lang|en|'''United Kingdom'''}}」、「{{Lang|en|'''UK'''}}」。[[日本語]]における一般的な通称は「'''イギリス'''」もしくは「'''英国'''」であるが稀に{{Lang|en|United Kingdom}}の[[直訳と意訳|直訳]]である「'''[[連合王国]]'''(れんごうおうこく)」が用いられることもある現在の公用文では英国が使用されており、「イギリスは口語で用いられることが多い<ref>[[日本放送協会|NHK]]で採用している他原則として英国を用いるメディアでも[[イギリス英語]]のような形では使用する</ref>。「連合王国は2003年まで法文において用いられていた<ref>[http://warp.da.ndl.go.jp/info:ndljp/pid/1368617/www.meti.go.jp/policy/anpo/moto/topics/country/country.pdf 輸出貿易管理令等における国名表記の変更について]([[経済産業省]]) 国立国会図書館のアーカイブより''2019-2-5閲覧''</ref>。

イギリス[[ポルトガル語]]で[[イングランド]]を指す{{Lang|pt|Inglez}}イングレス)」が語源で戦国時代にポルトガル人が来航した事に起源を持つ原義にかかわらず連合王国全体を指して使われており連合王国の構成体たるイングランドとは区別される[[江戸時代]]には[[オランダ語]]の{{Lang|nl|Engelsch}}エングルシュ)」を語源とする「'''エゲレス'''」という呼称も広く使用された<ref>[https://kotobank.jp/word/%E3%82%A8%E3%82%B2%E3%83%AC%E3%82%B9-444373 コトバンク「エゲレス」]</ref>。[[幕末]]から[[明治]]・[[大正]]期には「'''英吉利'''(えいぎりす)」や「大不列顛(だいふれつてん、大ブリテン)」と[[国名の漢字表記一覧|漢字で表記]]されることもあったが、前者が「英国」という略称の語源である。ただし「英国」は、狭義に連合王国全体でなくイングランド('''英格蘭''')のみを指す場合もある<ref>また、[[アメリカ合衆国]]に渡ることを「渡米」と言うように、イギリス、特にイングランドへ渡ることを「渡英」と言う([[二字熟語による往来表現の一覧]]を参照)。</ref>。

[[合同法 (1707年)|1707年合同法]]においては[[イングランド王国]]および[[スコットランド王国]]を一王国に統合すると宣言する同法において新国家名称は[[グレートブリテン王国]]またはグレートブリテン連合王国および連合王国とすると述べている<ref>{{cite web |url=http://www.scotshistoryonline.co.uk/union.html |title=Treaty of Union, 1706 |publisher=Scots History Online |accessdate=23 August 2011}}</ref><ref>{{cite book |url=http://books.google.com/?id=LYc1tSYonrQC&pg=PA165 |title=Constitutional & Administrative Law |page=165 |author=Barnett, Hilaire |author2=Jago, Robert |edition=8th |year=2011 |isbn=978-0-415-56301-7 |publisher=Routledge |location=Abingdon }}</ref>。しかしながら、「連合王国」という用語は18世紀における非公式の使用にのみ見られ、「長文式」でない単なる「グレート・ブリテン」であった1707年から1800年まで、同国はごくまれに正式名称である「グレート・ブリテン連合王国」と言及された<ref>See [[s:Act of Union 1707#Article 1 (name of the new kingdom)|Article One]] of the Act of Union 1707.</ref><ref name=name>"After the political union of England and Scotland in 1707, the nation's official name became 'Great Britain'", ''The American Pageant, Volume 1'', Cengage Learning (2012)</ref><ref name=name2>"From 1707 until 1801 ''Great Britain'' was the official designation of the kingdoms of England and Scotland". ''The Standard Reference Work:For the Home, School and Library, Volume 3'', Harold Melvin Stanford (1921)</ref><ref name=name3>"In 1707, on the union with Scotland, 'Great Britain' became the official name of the British Kingdom, and so continued until the union with Ireland in 1801". ''United States Congressional serial set, Issue 10;Issue 3265'' (1895)</ref><ref>{{cite web |url=http://www.historyworld.net/wrldhis/PlainTextHistories.asp?historyid=ab07 |title=History of Great Britain (from 1707) |authorlink=w:Bamber Gascoigne |author=Gascoigne, Bamber |publisher=History World |accessdate=18 July 2011}}</ref>。[[合同法 (1800年)|1800年合同法]]では、1801年にグレート・ブリテン王国と[[アイルランド王国]]が統合し、[[グレート・ブリテン及びアイルランド連合王国]]が成立した。現在の正式国名である「グレート・ブリテン及び北(部)アイルランド連合王国」は、[[北アイルランド]]のみが連合王国の一部としてとどまった1922年の[[アイルランド自由国]]独立および{{仮リンク|アイルランド分裂|en|Partition of Ireland}}後に採用された<ref>{{cite book |title=The Irish Civil War 1922–23 |author=Cottrell, P. |year=2008 |page=85 |isbn=1-84603-270-9}}</ref>。

イギリスは主権国家として国であるがイングランド[[スコットランド]][[ウェールズ]]それほどの段階ではないが北アイルランドも主権国家ではないが[[イギリスのカントリー|」(country]]と呼ばれる<ref name="alphabeticalNI">{{citation |author1=S. Dunn |author2=H. Dawson|year=2000 |title=An Alphabetical Listing of Word, Name and Place in Northern Ireland and the Living Language of Conflict |publisher=Edwin Mellen Press |location=Lampeter |quote=One specific problem&nbsp; in both general and particular senses&nbsp; is to know what to call Northern Ireland itself:in the general sense, it is not a country, or a province, or a state&nbsp; although some refer to it contemptuously as a statelet:the least controversial word appears to be jurisdiction, but this might change.}}</ref><ref>{{cite web |url=http://www.iso.org/iso/iso_3166-2_newsletter_ii-3_2011-12-13.pdf |title=Changes in the list of subdivision names and code elements |work=ISO 3166-2 |publisher=International Organization for Standardization |date=15 December 2011 |accessdate=28 May 2012}}</ref>。スコットランド、ウェールズ、北アイルランドは、権限の委譲による自治権を有する<ref>[http://books.google.com/?id=gPkDAQAAIAAJ Population Trends, Issues 75–82, p.38], 1994, UK Office of Population Censuses and Surveys</ref><ref name="citizenship">[http://books.google.com/?id=2u8rD6F-yg0C&pg=PA7 Life in the United Kingdom:a journey to citizenship, p. 7], United Kingdom Home Office, 2007, ISBN 978-0-11-341313-3.</ref>。イギリス首相のウェブサイトでは、連合王国の説明として「1国内の国々」という言葉が用いられていた<ref name="page823"/>。{{仮リンク|イギリスの12のNUTS1地域|en|NUTS of the United Kingdom}}統計のような複数の統計的概要において、スコットランド、ウェールズ、北アイルランドを「region」と言及している<ref>{{cite web |url=http://www.ons.gov.uk/ons/dcp171778_346117.xml |title=Statistical bulletin:Regional Labour Market Statistics |accessdate=5 March 2014 |archiveurl=https://web.archive.org/web/20141224045523/http://www.ons.gov.uk/ons/dcp171778_346117.xml |archivedate=2014年12月24日 |deadlinkdate=2018年3月 }}</ref><ref>{{cite web |url=http://www.gmb.org.uk/newsroom/fall-in-earnings-value-during-recession |title=13.4% Fall In Earnings Value During Recession |accessdate=5 March 2014}}</ref>。北アイルランドは「province」とも言及される<ref name="alphabeticalNI"/><ref name="placeApart">{{cite book |author=Murphy, Dervla |title=A Place Apart |year=1979 |publisher=Penguin |place=London |isbn=978-0-14-005030-1}}</ref>。北アイルランドに関しては、記述名の使用が「多くの場合、個人の政治的選好を明らかにする選択で議論の的になり得る」<ref>{{Cite book |last1=Whyte |first1=John |authorlink1=w:John Henry Whyte |last2=FitzGerald |first2=Garret|authorlink2=w:Garret FitzGerald|year=1991 |title=Interpreting Northern Ireland |location=Oxford |publisher=Clarendon Press |isbn=978-0-19-827380-6}}</ref>。

英語ではBritainという言葉は連合王国の同義語として頻繁に用いられる一方、「Great Britainという言葉は連合王国全体の緩い同義語として用いられる場合もあるが<ref>{{cite web |url=http://www.merriam-webster.com/dictionary/great%20britain |title=Merriam-Webster Dictionary Online Definition of '&#39;Great Britain'&#39;|publisher=[[:en:Merriam Webster|Merriam Webster]] |date=31 August 2012 |accessdate=9 April 2013}}</ref><ref>[[:en:New Oxford American Dictionary|New Oxford American Dictionary]]:"Great Britain:England, Wales, and Scotland considered as a unit. The name is also often used loosely to refer to the United Kingdom."</ref>、本来はイングランド、スコットランドおよびウェールズを指すものであり、北アイルランドを含む(すなわち、イギリス全体を指す)場合には用いるべきでないとされる<ref>{{cite news |url=http://www.guardian.co.uk/styleguide/page/0,,184840,00.html |title=Guardian Unlimited Style Guide |publisher=Guardian News and Media Limited |accessdate=23 August 2011 |location=London |date=19 December 2008}}</ref><ref>{{cite news |url=http://news.bbc.co.uk/1/hi/programmes/radio_newsroom/1099593.stm#g|title=BBC style guide (Great Britain)|accessdate=23 August 2011 |work=BBC News|date=19 August 2002}}</ref><ref>{{cite web |url=http://www.direct.gov.uk/en/Governmentcitizensandrights/LivingintheUK/DG_10012517 |title=Key facts about the United Kingdom|archiveurl=http://webarchive.nationalarchives.gov.uk/20121015000000/http://www.direct.gov.uk/en/Governmentcitizensandrights/LivingintheUK/DG_10012517|archivedate=3 November 2012 |accessdate=8 March 2015 |work=Government, citizens and rights |publisher=HM Government}}</ref>。

"GB"及び"GBR"イギリスの[[国際標準化機構|標準]]国名コード ([[ISO 3166-2:GB|ISO 3166-2]]及び[[:en:ISO 3166-1 alpha-3|ISO 3166-1 alpha-3]]を参照) でありその結果として国際機関がイギリスに言及する際に用いられることがあるさらにイギリスのオリンピックチームはGreat Britainもしくは[[Team GB]]の名称を用いる<ref>{{cite web |title=Great Britain |url=http://www.olympic.org/great-britain |publisher=International Olympic Committee |accessdate=10 May 2011}}</ref><ref>{{cite news|last1=Mulgrew|first1=John|title=Team GB Olympic name row still simmering in Northern Ireland|url=http://www.belfasttelegraph.co.uk/news/northern-ireland/team-gb-olympic-name-row-still-simmering-in-northern-ireland-28776939.html|accessdate=9 March 2015|work=Belfast Telegraph|date=2 August 2012}}</ref>。

形容詞のBritishイギリスに関する事項への言及によく用いられる。「Britishに明白な法的含意はないがイギリスの市民権及び[[:en:British nationality law|国籍に関する事項]]への言及に法律上用いられる<ref name="Bradley">{{cite book |url=http://books.google.com/?id=HT_GS2zgN5QC&pg=PA36 |title=Constitutional and administrative law |volume=1 |page=36 |author=Bradley, Anthony Wilfred |author2=Ewing, Keith D. |edition=14th |publisher=Pearson Longman |location=Harlow |year=2007 |isbn=978-1-4058-1207-8}}</ref>。イギリスの国民は、自らの国民性を表現するのに多数の異なる用語を用い、自らを[[イギリス人]]であるか、[[イングランド人]]、[[スコットランド人]]、[[ウェールズ人]]、[[:en:People of Northern Ireland|北アイルランド人]]、[[アイルランド人]]<ref>{{cite web |url=http://www.ark.ac.uk/nilt/2010/Community_Relations/NINATID.html |title=Which of these best describes the way you think of yourself? |year=2010 |work=Northern Ireland Life and Times Survey 2010 |publisher=ARK&nbsp;– Access Research Knowledge |accessdate=1 July 2010}}</ref>であるか、またはその両方であると見なし得る<ref>{{cite book |url=http://books.google.com/?id=u8gZklxHTMUC&pg=PA275 |title=Regionalism after regionalisation:Spain, France and the United Kingdom |pages=275–277 |author=Schrijver, Frans |publisher=Amsterdam University Press |year=2006 |isbn=978-90-5629-428-1}}</ref>。

2006{{仮リンク|イギリスのパスポート|en|British passport}}に新デザインが導入された新パスポートの1ページ目には[[英語]][[ウェールズ語]][[スコットランドゲール語]]で正式国名が記載されている<ref>{{cite news|url=http://www.guardian.co.uk/commentisfree/2010/dec/11/ian-jack-saddened-by-scotland-going-gaelic |location=London |work=The Guardian |first=Ian |last=Jack |title=Why I'm saddened by Scotland going Gaelic |date=11 December 2010}}</ref>。ウェールズ語での正式国名は"Teyrnas Unedig Prydain Fawr a Gogledd Iwerddon"であり、政府のウェブサイト上での略名は"Teyrnas Unedig"であるが<ref>{{cite web|url=http://www.direct.gov.uk/cy/Governmentcitizensandrights/LivingintheUK/DG_10012517CY|title=Ffeithiau allweddol am y Deyrnas Unedig|publisher=Directgov&nbsp;– Llywodraeth, dinasyddion a hawliau]|archiveurl=https://web.archive.org/web/20120924102112/http://www.direct.gov.uk/cy/Governmentcitizensandrights/LivingintheUK/DG_10012517CY|archivedate=2012年9月24日|accessdate=8 March 2015}}</ref>、通常は語形変化した形"Y Deyrnas Unedig"から"DU"と略される。スコットランド・ゲール語での正式国名は"Rìoghachd Aonaichte Bhreatainn is Èireann a Tuath"であり、略名は"Rìoghachd Aonaichte"である。

==歴史==
{{ブリテンの歴史}}
{{main|イギリスの歴史}}
[[ファイル:Descriptio Prime Tabulae Europae.jpg|thumb|left|[[クラウディオスプトレマイオス|プトレマイオス]]の[[地理学 (プトレマイオス)|地理学]]に基づく地図アルビオンと[[:en:Hibernia|ヒベルニア]]現在のアイルランドの文字が見える]]
[[ファイル:Lenepveu, Jeanne d'Arc au siège d'Orléans.jpg|thumb|left|[[ジャンヌダルク]]]]
{{Clear}}

古代のグレートブリテン島は[[アルビオン]]と呼ばれたラテン語起源でドーバーの白い崖に由来するとされる

1066年に[[ノルマンディー公]]であった[[ウィリアム1世 (イングランド王)|ウィリアム征服王]] (William the Conqueror) が[[ノルマンコンクエスト|イングランドを征服]]し大陸の進んだ[[封建制]]を導入して[[王国]]の体制を整えていった人口と[[経済力]]に勝るイングランドがウェールズとスコットランドを圧倒していった

13世紀[[第一次バロン戦争]][[第二次バロン戦争]]で[[フランス]]に政治を左右された1282年にウェールズ地方にもイングランドの州制度がしかれた14-15世紀にわたりフランスと[[百年戦争]]を展開したが1373年に[[英葡永久同盟]]を結んだ

[[ばら戦争]]を勝ち抜いた[[ランカスター朝]]は[[閨閥]]にバイエルン公でホラント伯の[[ヴィルヘルム1世 (バイエルン公)|ヴィルヘルム1世]]を迎えた1497[[ジョンカボット]]が北米海岸を発見した1514[[検閲]]できない外国商人飛脚が設立された1534[[国王至上法]]が出た1536年及び1543年の[[:en:Laws in Wales Acts 1535 and 1542|統一法]]の下スコットランドを正式に併合した{{仮リンク|ウェールズ法諸法|en|Laws in Wales Acts 15351542}})。1559キリスト教が[[イングランド国教会]]統一された1562年フランスで[[ユグノー戦争]]が起こってユグノーが移ってきた亡命者トレンチ家はイギリスで[[:en:Earl of Clancarty|クランカートリー伯]]となった<ref>Samuel Smiles, ''The Huguenots:Their Settlements, Churches, and Industries in England and Ireland'', Genealogical Publishing Com, 1868, pp.313-314.</ref>1588[[アルマダの海戦]]でカトリック勢力を破った1598[[ハンザ同盟]]の在ロンドン基地を閉鎖した

[[ファイル:London.bankofengland.arp.jpg|thumb|[[イングランド銀行]]]]
1600年[[イギリス東インド会社]]ができた1603年にイングランドとスコットランドが[[同君連合]]を形成したそして[[ヘンリーハドソン]]や[[ウィリアムバフィン]]が北米探検に活躍した1620[[ピルグリムファーザーズ]]が北米に上陸しまたフランスでユグノーが反乱しだした1628年に[[権利の請願]]がなされ翌年に[[リシュリュー]]がユグノーと和解した1639-1640スコットランド王国に国教会を強制しようとイングランドは二度の司教戦争を挑むが共に敗れてしまったそして矛先をアイルランド王国へ変えて[[チャールズ1世 (イングランド王)|チャールズ1世]][[オリバークロムウェル]][[ウィリアム3世 (イングランド王)|ウィリアム3世]]の3人が17世紀末まで苛め抜いたウィレム3世は[[ルイ14世]]に迫害されたユグノーに支えられ1694年[[イングランド銀行]]を設立した1702ユグノーだった[[:en:Matthew Decker|マシューデッカー]]がロンドンへ来た1704年にジブラルタルを占領し[[カトリック]]勢力を地中海に封じた1707年の合同法でイングランドとスコットランドは合邦しグレートブリテン王国となった[[ピューリタン]]とユグノーが商売敵のカトリックに対し統一戦線を組み上げたのである[[イギリス帝国]]の手が届く世界各地で宗教と経済が不可分にからみあった紛争が続いた植民地の争奪戦だけでなく[[ロシア帝国]]とアメリカ合衆国で利権を工作するときも彼らは常に優位であった繊維業における[[産業革命]]は綿花を輸出する[[アメリカ合衆国]]へ通貨を独占的に供給した

[[ファイル:Battle of Waterloo 1815.PNG|thumb|ユグノーから[[:en:Baron Northwick|ノースウィック男爵]]が出た頃イギリスは[[対仏大同盟]]の主役であった連合国が[[ワーテルローの戦い]]で勝利し[[ナポレオン戦争]]が終息したこうして[[パクスブリタニカ]]の時代が到来した]]
1801年の合同法でアイルランド王国と合邦しグレートブリテン及びアイルランド連合王国となった<ref>アイルランドにもユグノーが地位を占めていた[[:en:Baron Rendlesham|レンドルシャム男爵]]など</ref>しかし[[アイルランド共和軍]]は健在である統一戦線としては[[ジョージ4世 (イギリス王)|ジョージ4世]]の家柄勲章[[フリーメーソン]]加入すべてが戦利品であったフランス王が再びカトリックを強制することはないだろうしもはや[[神聖ローマ帝国]]もなくなっていた[[ベルギー]]を独立させ[[阿片戦争]]に勝利し統一戦線は鉄道通信の独占に注力したしかし統一戦線は事をやりすぎる癖があった[[ルイ16世]]には忌まわしき[[フォンテーヌブローの勅令]]を破棄させれば十分であったが[[フランス革命]]が[[ナポレオン]]を台頭させて神聖ローマだけでなく統一戦線まで脅かした支援した[[プロイセン王国]]がロシアと組んで[[オスマン帝国]]を攻撃するのも都合がよかったしかし[[普墺戦争]]で[[キール運河]]の利権をとられそうになったり[[普仏戦争]]で南ドイツ連邦が水の泡となったり[[オスマン債務管理局]]の利権を[[ドイツ帝国]]に奪われたりしてベルギーの統一戦線は飼い犬に手を噛まれた気持ちになった

[[栄光ある孤立]]と謳われた外交方針は[[エドワード7世 (イギリス王)|エドワード7世]]のときに放棄された[[1902年]]には[[日本]]とも[[日英同盟]]を締結した彼らはドイツを[[第一次世界大戦]]で敵対国として敗戦後の[[ヴァイマル共和政]]に対して多額の賠償金による債務奴隷にしたしかしアメリカ合衆国に対する影響力でイギリスはドイツにひけをとった1926年には[[バルフォア報告書]]が提出されたイギリスは[[ラザード]]を支配したが[[太平洋]]は支配できなかった[[ウィンザー朝]]の[[ジョージ5世 (イギリス王)|ジョージ5世]]による治世[[デビッドロイドジョージ]]政権下の[[1922年]]に[[英愛条約]]が発効され北部6州北アイルランド;アルスター9州の中の6州を除く26州がアイルランド自由国現[[アイルランド|アイルランド共和国]]として独立し[[1927年]]に現在の名称「'''グレートブリテン及び北アイルランド連合王国'''」へと改名したなおカントリーの一つであるスコットランドが独立すべきかどうかを問う住民投票が2014年9月に実施されたが独立は否決された<ref>{{cite web|url=http://www.cnn.co.jp/world/35023094.html|title=スコットランド独立の是非を問う住民投票実施へ 英国|author=<code>CNN.co.jp</code>|accessdate=2012-10-16}}</ref>。1925年受託者法([[:en:Trustee Act 1925|Trustee Act 1925]])の第61条は、裁判所に、公生かつ合理的に行動し、免責されるのが当然である受託者を、信託違反の責任から免除する権限を与えた<ref>Trustee Act, 1925. Article 61. "If it appears to the court that a trustee, whether appointed by the court or otherwise, is or may be personally liable for any breach of trust, whether the transaction alleged to be a breach of trust occurred before or after the commencement of this Act, but has acted honestly and reasonably, and ought fairly to be excused for the breach of trust and for ommitting to obtain the directions of the court in the matter in which he committed such breach, then the court may reliave him either wholly or partly from personal liability for the same."</ref><ref>1958年信託変更法([[:en:Variation of Trusts Act 1958|Variation of Trusts Act 1958]])は、信託を変更し、かつ受益者の利益のために信託財産を処理することを認可する広い権限を、裁判所に与えている。</ref>。この立法をなした[[イギリス議会]]は、[[世界恐慌]]が[[投資信託]]を通し大衆化した歴史にある程度の責任がある。イギリス投資信託全体の資産構成に占める下位証券の割合は、1933年で36.2%、1935年で42.0%、1938年で53.5%に上昇していった<ref>[[証券取引委員会]] ''Investment Trusts and Investment Companes'', Part 2, 連邦政府出版局 1939年 52頁;H.Burton and D.C.Corner, ''Investment and Unit Trusts in britain and America'', Elek Book, London, 1968, p.68.</ref>。

[[1939年]]の[[アドルフヒトラー]]総統の[[国家社会主義ドイツ労働者党|ナチ党]]率いる[[ナチスドイツ]]が[[ポーランド]]に侵攻し[[フランス]]とともに宣戦布告を行い[[バトルオブブリテン]]をはじめ[[西部戦線 (第二次世界大戦)|ヨーロッパ戦線]]では対独伊戦争[[太平洋戦争|太平洋戦線]]では対日戦争を経験しアメリカ合衆国の[[民主党 (アメリカ)|民主党]][[フランクリンルーズベルト]]大統領と[[大西洋憲章]]を共同で提唱した保守党の[[ウィンストンチャーチル]]政権による[[挙国一致内閣]]の下に勝利を得た[[第二次世界大戦]]後[[イギリス軍]]はドイツの[[ハンブルク]]や[[ハノーファー]]を占領し旧[[西ドイツ]]の形成の一役を担ったアメリカ合衆国は旧南ドイツ連邦と[[オーストリア]]西部を占領したアメリカ合衆国の占領地域は[[オランダ]]と歴史がつながっており[[戦間期]]にまして欧州東西の資本が錯綜した

イギリスは[[1945年]]の[[冷戦]]開始以降にかけて政治経済その他多くの面でアメリカ合衆国に覇権を譲ったまた[[資本主義]][[自由主義]]陣営の[[西側諸国]]の一国として[[ソビエト連邦]]とは敵対しながら政治面では[[労働党 (イギリス)|労働党]]の[[クレメントアトリー]]政権が「'''[[ゆりかごから墓場まで]]'''」をスローガンに[[福祉国家]]を作り上げた経済面ではイングランド銀行が[[ブレトンウッズ協定|ブレトンウッズ体制]]をめぐる駆け引きに競り負け1960年代のポンド危機と1970年代のセカンダリーバンキング危機に遭い、「[[英国病]]とまで呼ばれる[[景気後退|不景気]]に苦しんだ産業面では戦前から[[ゼネラルエレクトリック]]に[[産業革命]]の威光を奪われていたアトリー失脚後は保守党へ政権交代となりチャーチルが首相に再任する

第二次大戦中イギリスは帝国内で最大規模の人口を誇る[[イギリス領インド帝国|インド]]に対してヨーロッパ太平洋で複数の戦線を維持し又城内平和を維持するため戦後[[インド]]の地位に対して大幅な譲歩をせざるを得なかったイギリス政府は1947年にインド独立法を承認し[[印パ分離独立|インドとパキスタンの独立]]を翌[[1948年]]にはセイロン[[スリランカ]]の独立を承認した又大戦中に日本の支配下にあったビルママレーでもイギリス支配下に復することに混乱が見られ[[1948年]]に[[ビルマ]]ミャンマーの[[1957年]]に[[マレーシア]]の独立を承認した

[[1960年代]]に入るとフランス領西アフリカの独立要求を期に[[アフリカ]]諸国の独立運動が活発化し[[1960年]]に[[ナイジェリア]]が[[1962年]]に[[ウガンダ]]が[[1963年]]に[[ケニア]]が[[1964年]]に[[マラウイ]]と[[ザンビア]]がイギリスから独立を宣言した又[[1961年]]に[[南アフリカ共和国|南アフリカ]]が[[1966年]]に[[ローデシア]]が[[アパルトヘイト]]維持のためイギリスからの独立を宣言した

[[1956年]]には[[エジプト]]が[[スエズ運河]]の国有化を宣言し同地帯を占領したためイギリスフランス[[イスラエル]]との間で戦闘が勃発したこれが[[第二次中東戦争]]スエズ危機である英仏は国際世論の支持を得られなかったためスエズから撤退し[[地中海]]と[[紅海]]を結ぶスエズ運河の利権を喪失したまたエジプトの行動に励まされて中東地域でも独立運動が刺激され[[1971年]]に[[バーレーン]][[カタール]][[アラブ首長国連邦]]がイギリスから独立した

残る最大のイギリス植民地は[[香港]]だけになったがこれも1984年にマーガレットサッチャー首相と[[トウ小平|鄧小平]][[中華人民共和国]]中央軍事委員会主席の間で行われた英中首脳会談で新界の租借期限が切れる1997年に割譲地も含めて一斉に中国に返還されることになった[[香港返還|香港を返還]]したことでイギリスは主要な植民地のほぼ全てを喪失することになり世界の7つの海を跨いだ[[イギリス帝国]]は消滅していった

[[1964年]]には[[ハロルドウィルソン]]が首相に就任しアトリー以来13年ぶりに労働党が政権に復帰する[[1969年]]に[[イングランド]][[ウェールズ]] [[スコットランド]][[1973年]]に[[北アイルランド]]で死刑制度が一部例外を除き廃止されたまたウィルソン労働党政権下で[[妊娠中絶]]の合法化[[死刑]]制度の廃止及び[[同性愛]]の非刑罰化[[ソドミー法]]の廃止を含む社会的改革がなされ通貨[[スターリングポンド|ポンド]]の平価切り下げや日本の[[放送大学]]の模倣ともなった[[大学通信教育|通信制公立大学]]である[[オープン大学]]の設置などの政策が実施された

1980年代に成立した[[保守党 (イギリス)|保守党]]の[[マーガレットサッチャー]]政権は[[新自由主義]]による[[構造改革]][[ネオリベラリズム]][[サッチャリズム]]に基づく[[民営化]][[行政改革]][[規制緩和]]を急進させて[[小さな政府]]志向[[自由主義国家論]])、多くの[[失業]]者を出した地方経済は不振を極めロンドンを中心に[[金融]]産業などが成長した

1990年代政権は保守党の[[ジョンメージャー]]から労働党の[[トニーブレア]]に交代しイギリスは[[市場]]化一辺倒の[[政策]]を修正しつつかつての重厚な福祉国家にも逆戻りしない[[第三の道]]への路線に進むことになったまた[[1998年]]人権法を制定し[[死刑]]制度が完全に廃止されたこの頃からイギリスは久しぶりの好況に沸き、「老大国のイメージを払拭すべく「'''[[クールブリタニア]]'''」と呼ばれるイメージ戦略[[文化政策]]に力が入れられるようになった

2000年代2010年代[[21世紀]]に突入し労働党の[[ゴードンブラウン]]保守党の[[デーヴィッドキャメロン]]と政権が続く

[[2014年]]からは[[同性結婚]]が合法化された

[[2016年]][[6月23日]]に[[イギリスの欧州連合離脱是非を問う国民投票]]が実施されその結果僅差をもって離脱賛成派が過半数を占めたため[[イギリスの欧州連合離脱]]通称ブレグジットBrexitが決定された

これを受けてキャメロン首相兼保守党党首が責任を取る形で辞任を表明し[[テリーザメイ]]がサッチャーに続く2人目のイギリスの女性首相兼保守党党首として2016年[[7月13日]]に就任したメイ政権は新たに[[欧州連合離脱省]]を設置した

結果として[[2020年]][[1月31日]]午後11時([[グリニッジ標準時|GMT]])にイギリスは[[欧州連合]](EU)から脱退した<ref>{{Cite web|url=https://mainichi.jp/articles/20200201/k00/00m/030/008000c|title=英国がEU離脱 加盟国の離脱は初|publisher=毎日新聞|date=2020-02-01|accessdate=2020-02-01}}</ref>。

==地理==
{{main|イギリスの地理}}
[[ファイル:Uk topo en.jpg|thumb|200px|イギリスの地形図]]
[[ファイル:BenNevis2005.jpg|thumb|[[ブリテン諸島]]最高峰の[[ベンネビス山]]]]
イギリスはグレートブリテン島のイングランドウェールズスコットランドおよびアイルランド島北東部の北アイルランドで構成されているこの2つの大きな島とその周囲大小の島々を[[ブリテン諸島]]と呼ぶグレートブリテン島は中部から南部を占めるイングランド北部のスコットランド西部のウェールズに大別されるアイルランド島から北アイルランドを除いた地域はアイルランド共和国がある

北アイルランドとアイルランド共和国の国境の他にイギリスは[[大西洋]]に囲まれ東に[[北海]]南に[[イギリス海峡]]がある[[アイリッシュ海]]はグレートブリテン島とアイルランド島の間に位置するイギリスの総面積は243,610km<sup>2</sup>であり[[国の面積順リスト|世界第78位]]及び[[:en:List of European countries by area|ヨーロッパ第11位]]

イングランドの大部分は<!--rolling lowland terrain-->岩の多い低地からなり北西の山がちな地域[[湖水地方]]のカンブリア山脈)、北部ペニンネスの湿地帯ピークディストリクトの[[石灰岩]]丘陵地帯デールと呼ばれる渓谷[[パーベック島]][[リンカンシャー]]の石灰岩質の丘陵地帯から南イングランドの泥炭質のノースダウンズサウスダウンズチルターンにいたるイングランドを流れる主な河川は[[テムズ川]][[セヴァーン川]][[トレント川]][[ウーズ川]]である主な都市はロンドン[[バーミンガム]][[ヨーク (イングランド)|ヨーク]][[ニューカッスルアポンタイン]]などイングランド南部の[[ドーバー (イギリス)|ドーヴァー]]には[[英仏海峡トンネル]]があり対岸のフランスと連絡するイングランドには標高 1000m を超える地点はない

ウェールズは山がちで最高峰は標高 1,085m の[[スノードン山]]である本土の北に[[アングルシー島]]があるウェールズの首都また最大の都市は[[カーディフ]]で南ウェールズに位置する

スコットランドは地理的に多様で南部および東部は比較的標高が低くベンネビス山がある北部および西部は標高が高いベンネビス山はイギリスの最高地点で標高 1343 m であるスコットランドには数多くの半島ロッホと呼ばれる湖がありグレートブリテン島最大の淡水湖である[[ネス湖|ロッホネス]]もスコットランドに位置する西部また北部の海域には[[ヘブリディーズ諸島]][[オークニー諸島]][[シェトランド諸島]]を含む大小さまざまな島が分布するスコットランドの主要都市は首都[[エディンバラ]][[グラスゴー]][[アバディーン]]である

北アイルランドはアイルランド島の北東部を占めほとんどは丘陵地である中央部は平野でほぼ中央に位置する[[ネイ湖]]はイギリス諸島最大の湖である主要都市は[[ベルファスト]]と[[ロンドンデリー|デリー]]

現在イギリスは大小あわせて1098ほどの島々からなるほとんどは自然の島だがいくつかは[[クランノグ]]といわれる過去の時代に石と木を骨組みに作られしだいに廃棄物で大きくなっていった人工の島がある

イギリスの大半はなだらかな丘陵地及び平原で占められており国土のおよそ90%が可住地となっているそのため国土面積自体は[[日本]]のおよそ3分の2[[本州]]と[[四国]]を併せた程度であるが[[可住地面積]]は逆に日本の倍近くに及んでいるイギリスは[[森林]]も少なく日本が国土の3分の2が森林で覆われているのに対しイギリスの[[森林率]]は11%ほどである<ref>{{Cite web |url=http://yoshio-kusano.sakura.ne.jp/nakayamakouen6newpage3.html |title=中山徹奈良女子大教授の記念講演6 どうやって森を再生するかイギリスの例 |publisher=日本共産党宝塚市議 草野義雄 |accessdate=2014-5-10 |archiveurl=https://web.archive.org/web/20140512220911/http://yoshio-kusano.sakura.ne.jp/nakayamakouen6newpage3.html |archivedate=2014年5月12日 |deadlinkdate=2018年3月 }}</ref>。

その他{{仮リンク|領土紛争の一覧|en|List of territorial disputes|label=紛争中}}の[[フォークランド諸島]][[ジブラルタル]][[イギリス領インド洋地域|インド洋地域]]を含む[[イギリスの海外領土|14の海外領土]]を有する<ref>{{cite web |url=http://www.fco.gov.uk/en/about-us/what-we-do/overseas-territories |title=Working with Overseas Territories |publisher=[[:en:Foreign and Commonwealth Office|Foreign and Commonwealth Office]] |accessdate=3 May 2011}}</ref>。[[ガーンジー]]、[[ジャージー]]、[[マン島]]はイギリスの一部ではなく、イギリスの君主をともに君主とし、[[イギリス政府]]が防衛及び国際的表示に対して責任を負う[[イギリスの王室属領|王室属領]]である<ref>{{cite web |url=http://www.direct.gov.uk/en/Governmentcitizensandrights/LivingintheUK/DG_10012517 |title=Key facts about the United Kingdom |accessdate=3 May 2011 |publisher=[[:en:Directgov|Directgov]] |quote=The full title of this country is 'the United Kingdom of Great Britain and Northern Ireland'. 'The UK' is made up of England, Scotland, Wales and Northern Ireland. 'Britain' is used informally, usually meaning the United Kingdom. 'Great Britain' is made up of England, Scotland and Wales. The Channel Islands and the Isle of Man are not part of the UK. |archiveurl=http://webarchive.nationalarchives.gov.uk/20121015000000/http:/www.direct.gov.uk/en/Governmentcitizensandrights/LivingintheUK/DG_10012517 |archivedate=2012年10月15日 |deadlinkdate=2018年3月 }}</ref>。

===主要都市===
{{Main|イギリスの都市の一覧}}
イギリスは四つの非独立国であるイングランドスコットランドウェールズ北アイルランドより構成されるそれぞれの国は首都を持ちロンドンイングランド)、エディンバラスコットランド)、カーディフウェールズ)、ベルファスト北アイルランドがそれである中でもイングランドの首都であるロンドンはイギリス連合王国の首都としての機能も置かれている

イングランドの[[首都]]ロンドンは[[ヨーロッパ]]第2の規模の都市的地域及び[[ユーロスタット]]によれば[[欧州連合]]最大の約1,400万人の人口を有する[[:en:London commuter belt|都市圏]]であり重要な[[世界都市]]及び[[金融センター]]である<ref name="appsso.eurostat.ec.europa.eu show">{{cite web |url=http://appsso.eurostat.ec.europa.eu/nui/show.do?dataset=met_pjanaggr3&lang=en |title=Metropolitan Area Populations |publisher=Eurostat |date=30 August 2012 |accessdate=4 May 2013}}</ref><ref>{{cite web|url=https://www.cia.gov/library/publications/the-world-factbook/geos/uk.html|title=The World Factbook|date=1 February 2014|work=[[Central Intelligence Agency]]|accessdate=23 February 2014}}</ref>。

ウェールズスコットランド北アイルランドの首都は各々カーディフエディンバラベルファストである
[[ファイル:Population density UK 2011 census.png|thumb|right|人口分布2011]]

{| class="infobox" style="text-align:center; width:100%; margin-right:10px; font-size:100%"
! colspan="10" style="background:#e9e9e9; padding:0.3em; line-height:1.2em;"| '''イギリスの主要都市'''
|-
!rowspan=30|
[[ファイル:2019 Greenwich Peninsula & Canary Wharf.jpg|150px]]<br /><small>[[ロンドン]]</small><br />[[ファイル:Birmingham Skyline from Edgbaston Cricket Ground crop.jpg|150px]]<br /><small>[[バーミンガム]]</small><br />
! style="text-align:center; background:#f5f5f5;"| <small>#</small>
! style="text-align:left; background:#f5f5f5;"| 都市名
! style="text-align:left; background:#f5f5f5;"| [[イギリスの地方行政区画|行政区画]]
! style="text-align:center; background:#f5f5f5;"| 人口
! style="text-align:center; background:#f5f5f5;"| <small>#</small>
! style="text-align:left; background:#f5f5f5;"| 都市名
! style="text-align:left; background:#f5f5f5;"| [[イギリスの地方行政区画|行政区画]]
! style="text-align:center; background:#f5f5f5;"| 人口
!rowspan=21|
[[ファイル:Leeds CBD at night.jpg|150px]]<br /><small>[[リーズ]]</small><br />[[ファイル:Glasgow and the Clyde from the air (geograph 4665720).jpg|150px]]<br /><small>[[グラスゴー]]</small><br />
|-
| style="background:#f0f0f0"| 1 ||align=left | '''[[ロンドン]]''' || {{ENG}} || 8,908,081 || 11 ||align=left | '''[[コヴェントリー]]''' || {{ENG}} || 366,785|-
| style="background:#f0f0f0"| 2 ||align=left | '''[[バーミンガム]]''' || {{ENG}} || 1,141,374 || 12 ||align=left | '''[[カーディフ]]''' || {{Flagicon|WAL}}[[ウェールズ]] || 362,800|-
| style="background:#f0f0f0"| 3 ||align=left | '''[[リーズ]]''' || {{ENG}} || 789,194 || 13 ||align=left | '''[[ベルファスト]]''' || {{Flagicon|北アイルランド}}[[北アイルランド]] || 340,200|-
| style="background:#f0f0f0"| 4 ||align=left | '''[[グラスゴー]]''' || {{SCO}} || 626,410 || 14 ||align=left | '''[[レスター]]''' || {{ENG}} || 329,839|-
| style="background:#f0f0f0"| 5 ||align=left | '''[[シェフィールド]]''' || {{ENG}} || 582,506 || 15 ||align=left | '''[[ノッティンガム]]''' || {{ENG}} || 321,500|-
| style="background:#f0f0f0"| 6 ||align=left | '''[[マンチェスター]]''' || {{ENG}} || 547,627 || 16 ||align=left | '''[[ニューカッスルアポンタイン|ニューカッスルアポンタイン]]''' || {{ENG}} || 300,196|-
| style="background:#f0f0f0"| 7 ||align=left | '''[[ブラッドフォード (イングランド)|ブラッドフォード]]''' || {{ENG}} || 537,173 || 17 ||align=left | '''[[プリマス]]''' || {{ENG}} ||  263,100|-
| style="background:#f0f0f0"| 8 ||align=left | '''[[リヴァプール]]''' || {{ENG}} || 494,814 || 18 ||align=left | '''[[ウルヴァーハンプトン]]''' || {{ENG}} || 262,008|-
| style="background:#f0f0f0"| 9 ||align=left | '''[[エディンバラ]]''' || {{SCO}} || 488,050 || 19 ||align=left | '''[[キングストンアポンハル|キングストンアポンハル]]''' || {{ENG}} || 260,645|-
| style="background:#f0f0f0"| 10 ||align=left | '''[[ブリストル]]''' || {{ENG}} || 463,400 || 20 ||align=left | '''[[ストークオントレント|ストークオントレント]]''' || {{ENG}} || 255,833|}
{{Clear}}
4位以下の都市人口が僅差であり順位が変わりやすい2006年以降はロンドンバーミンガムリーズグラスゴーシェフィールドの順となっている

===気候===
イギリスの[[気候]]は2つの要因によって基調が定まっているまず[[メキシコ湾流]]に由来する暖流の北大西洋海流の影響下にあるため北緯50度から60度という高緯度にもかかわらず温暖であること次に中緯度の偏西風の影響を強く受けることである以上から[[西岸海洋性気候]] (Cfb) が卓越する[[大陸性気候]]はまったく見られず気温の年較差は小さい

メキシコ湾流の影響は冬季に強く現れる特に西部において気温の低下が抑制され気温が西岸からの距離に依存するようになる夏季においては緯度と気温の関連が強くなり比較的東部が高温になる水の蒸散量が多い夏季に東部が高温になることから年間を通じて東部が比較的乾燥し西部が湿潤となる

降水量の傾向もメキシコ湾流の影響を受けている東部においては降水量は一年を通じて平均しておりかつ一日当たりの降水量が少ない冬季特に風速が観測できない日には霧が発生しやすいこの傾向が強く当てはまる都市としてロンドンが挙げられる西部においては降水量が2500mmを超えることがある

首都ロンドンの年平均気温は12.81月の平均気温は6.77月の平均気温は19.5<ref>[https://www.weatheronline.co.uk/weather/maps/city?FMM=1&FYY=2001&LMM=12&LYY=2017&WMO=03779&CONT=ukuk&REGION=0003&LAND=UK&ART=TEM&R=0&NOREGION=1&LEVEL=162&LANG=en&MOD=tab London Weather Center 2001年1月から2017年12月までの平均]</ref>、年平均降水量は750.6mmとなっている。

==政治==
[[ファイル:Palace of Westminster, London - Feb 2007.jpg|thumb|[[イギリスの議会|英国議会]]が議事堂として使用する[[ウェストミンスター宮殿]]]]
{{main|イギリスの政治|イギリスの憲法|英国法|英米法}}
[[政体]]はイギリスの君主を[[元首]]に戴く[[立憲君主制]]であり内閣が議会の信任に基づいて存在する[[議院内閣制]]を採用する<ref>[http://www.royal.gov.uk/MonarchUK/HowtheMonarchyworks/Whatisconstitutionalmonarchy.aspx The British Monarchy, ''What is constitutional monarchy?'']. Retrieved 17 July 2013</ref><ref>[https://www.cia.gov/library/publications/the-world-factbook/geos/uk.html CIA, ''The World Factbook'']. Retrieved 17 July 2013</ref>。
===元首===
{{現在のイギリスの君主}}
1952年{{0}}2月{{0}}6日以降のイギリス女王君主[[ウィンザー朝]]第4代君主[[エリザベス2世]]である

======
[[イギリスの憲法]]は一つに成典化されていない[[不文憲法]]であり[[制定法]]議会制定法だけでなく[[マグナカルタ]]のような国王と貴族の契約も含むや[[判例法]]歴史的文書及び[[慣習法]]憲法的習律と呼ばれるなどが憲法を構成しているこれらは他の法律と同様に議会で修正可能なため[[軟性憲法]]であると言えるただし伝統的に憲法を構成する法律については簡単に改正されることはない)。憲法を構成する慣習法の一つに「'''国王は君臨すれども統治せず'''」とあり女王国王の権能は極めて儀礼的である

このように世界でも最も早い段階から立憲君主制と[[法の支配]]を採用しまた[[立法権]]優位の[[議会主権|議会主義]]が発達しており[[議院内閣制]][[ウェストミンスターシステム]]や[[政党制]][[複数政党制]]など現代の多くの国家が採用している[[民主主義]]の諸制度が発祥した国である

===内政===
[[立法権]]は[[イギリスの議会|議会]]に[[行政権]]は首相及び[[内閣 (イギリス)|内閣]]に[[司法権]]は[[イギリス最高裁判所]]及び以下の下級[[裁判所]]によって行使される

イギリスの議会は上院[[貴族院 (イギリス)|貴族院]]と下院[[庶民院 (イギリス)|庶民院]]の[[二院制]]である1911年に制定された[[議会法]]憲法の構成要素の一つにより、「下院の優越が定められている議院内閣制に基づき行政の長である首相は憲法的習律に従って下院第一党党首下院議員を国王が任命閣僚は議会上下両院の議員から選出される下院は単純[[小選挙区制]]による[[直接選挙]][[普通選挙]]で選ばれるが上院は非公選であり任命制である近年従来[[右派]]の保守党と[[左派]]の労働党により[[二大政党制]]化して来たが近年では第三勢力の[[自由民主党 (イギリス)|自由民主党]]旧[[自由党 (イギリス)|自由党]]の継承政党の勢力も拡大している

ウェールズスコットランド北アイルランドは各々異なる{{仮リンク|権限委譲 (イギリス)|en|Devolution in the United Kingdom|label=権限を委譲された}}政権を有しており<ref name="devoladmins">{{cite web|url=https://www.gov.uk/devolution-of-powers-to-scotland-wales-and-northern-ireland#devolved-administrations|title=Devolution of powers to Scotland, Wales, and Northern Ireland|publisher=United Kingdom Government|accessdate=17 April 2013|quote=In a similar way to how the government is formed from members from the two Houses of Parliament, members of the devolved legislatures nominate ministers from among themselves to comprise an executive, known as the devolved administrations...}}</ref><ref>{{cite news |url=http://news.bbc.co.uk/1/hi/education/7859034.stm |title=Fall in UK university students |work=BBC News |date=29 January 2009}}</ref><ref>{{cite web |url=http://www.transport-research.info/web/countryprofiles/uk.cfm |title=Country Overviews:United Kingdom |publisher=Transport Research Knowledge Centre |accessdate=28 March 2010 |archiveurl=https://web.archive.org/web/20100404062853/http://www.transport-research.info/web/countryprofiles/uk.cfm |archivedate=2010年4月4日 |deadlinkdate=2018年3月 }}</ref>、1996年に[[北アイルランド議会]]、1999年には[[スコットランド議会]]と[[ウェールズ議会]]が設置され、自治が始まった。スコットランドには主に[[スコットランド国民党]]による[[スコットランド独立運動]]が存在し、北アイルランドには20世紀から続く[[北アイルランド問題]]も存在する。
2016年{{0}}6月[[イギリスの欧州連合離脱是非を問う国民投票|欧州連合からの離脱を問う国民投票]]で賛成多数となり1973年のEEC加盟以来の大陸との一体化が幕を閉じた[[ブレグジット]])。これを受けてキャメロン首相からメイ首相へ交代した現任の首相は[[ボリスジョンソン]]

===地方行政区分===
[[ファイル:Scotland Parliament Holyrood.jpg|thumb|[[スコットランド議会]]議事堂]]
{{main|イギリスの地方行政区画}}

連合王国の地方行政制度は次の各地方によって異なっている
*{{Flag|ENG}}
*{{Flag|SCO}}
*{{Flag|WAL}}
*[[北アイルランド]]
このほか連合王国には含まれないものの連合王国がその国際関係について責任を負う地域として海外領土および[[王室属領]]が存在する

===外交軍事===
[[ファイル:Donald Trump and Theresa May (33998675310) (cropped).jpg|thumb|left|[[2017年]][[1月27日]]就任直後の[[ドナルドトランプ]]米大統領と[[ホワイトハウス]]で会談する[[テリーザメイ]]元英首相]]
{{Main|イギリスの国際関係|イギリス軍}}
イギリスは19世紀から20世紀前半までの間世界最高位の[[大国]]であった<ref>{{cite book |title=The First Industrial Nation:the Economic History of Britain, 17001914 |publisher=Routledge |location=London |author=Mathias, P. |year=2001 |isbn=0-415-26672-6}}</ref><ref name="ferguson">{{cite book |last=Ferguson |first=Niall |year=2004 |title=Empire:The rise and demise of the British world order and the lessons for global power |publisher=Basic Books |location=New York |isbn=0-465-02328-2}}</ref>現在も[[列強]]であり続け経済文化軍事科学政治で国際的な[[勢力圏|影響力を有する]]<ref>{{cite news |url=http://www.theaustralian.com.au/news/opinion/cameron-has-chance-to-make-uk-great-again/story-e6frg6zo-1225866975992 |author=Sheridan, Greg |title=Cameron has chance to make UK great again |accessdate=23 May 2011 |work=The Australian |location=Sydney |date=15 May 2010}}</ref><ref>{{cite news |url=http://www.independent.co.uk/news/uk/home-news/britain-is-now-most-powerful-nation-on-earth-8326452.html |author=Dugan, Emily |title=Britain is now most powerful nation on earth |accessdate=18 November 2012 |work=The Independent |location=London |date=18 November 2012}}</ref><ref name="David M. McCourt">{{cite book|last=McCourt|first=David|title=Britain and World Power Since 1945:Constructing a Nation's Role in International Politics|publisher=University of Michigan Press|year=28 May 2014|location=United States of America|pages=|isbn=0472072218|url=http://books.google.ie/books?id=lwpOnwEACAAJ&dq=Britain+and+World+Power+Since+1945:+Constructing+a+Nation%27s+Role+in+International+Politics&hl=en&sa=X&ei=TCJkU8TOE6mS7Abw14HIBg&ved=0CDIQ6AEwAA}}</ref>。

[[戦間期]]の[[国際連盟]]時代と同様1946年の第1回[[国際連合安全保障理事会]]以来同国は同理事会[[国際連合安全保障理事会常任理事国|常任理事国]]であり[[G7]][[主要国首脳会議|G8]][[G20]][[北大西洋条約機構|NATO]][[欧州評議会]][[経済協力開発機構|OECD]] [[世界貿易機関|WTO]]の加盟国となっているそしてアメリカ合衆国と歴史的に「'''特別な関係'''(Special relationship)」を持つアメリカ合衆国とヨーロッパ以外にも1920年代までは日本と[[日英同盟]]を結んでいた友好同盟国であったため[[大正]]時代の[[大日本帝国海軍]]現在の[[海上自衛隊]]は[[イギリス海軍]]の伝統に多大な影響を受けながら発展したイギリスと密接な同盟国は[[イギリス連邦|連邦国]]と他の[[英語圏]]の国家を含むイギリスの世界的な存在と影響は各国との相補関係と軍事力を通して拡大されているそれは世界中で約80の軍事基地の設置と軍の配備を維持していることにも現れている<ref>{{cite web|url=http://www.globalpowereurope.eu/|title=Global Power Europe|publisher=<code>Globalpowereurope.eu</code>|language=英語|accessdate=2008-10-17}}</ref>。2011年の軍事支出は627億ドルと一定水準を保っている。

[[ファイル:Soldiers Trooping the Colour, 16th June 2007.jpg|thumb|軍旗分列行進式における[[近衛兵 (イギリス)|近衛兵]]]]
イギリスの[[軍隊]]はイギリス軍<ref>{{lang-en-short|British Armed Forces}}</ref>または陛下の軍<ref>{{lang-en-short|His/Her Majesty's Armed Forces}}</ref>として知られているしかし公式の場ではアームドフォーシーズオブクラウン<!-- 慣例がないため未翻訳 --><ref>{{lang-en-short|Armed Forces of the Crown}}</ref>と呼ばれる<ref>{{Cite web|url=http://www.raf.mod.uk/legalservices/p3chp29.htm|title=Armed Forces Act 1976, Arrangement of Sections|publisher=<code>raf.mod.uk</code>|language=英語|accessdate=2009-02-22|archiveurl=https://web.archive.org/web/20090221072352/http://www.raf.mod.uk/legalservices/p3chp29.htm|archivedate=2009年2月21日|deadlinkdate=2018年3月}}</ref>(クラウンは冠、王冠の意)。全軍の最高司令官はイギリスの君主であるが、それはあくまで名目上に過ぎず、首相が事実上の指揮権を有している。軍の日常的な管理は[[国防省 (イギリス)|国防省]]に設置されている[[国防委員会]]によって行われている。

イギリスの軍隊は各国の軍隊に比べて広範囲にわたる活動を行い世界的な[[戦力投射]]能力を有する軍事大国の1つに数えられ国防省によると[[軍事費]]は世界2位である2008年現在軍事費はGDPの2.5%を占めている<ref>{{Cite web|url=http://www.mod.uk/DefenceInternet/AboutDefence/Organisation/KeyFactsAboutDefence/DefenceSpending.htm|title=Defence Spending|publisher={{lang|en|Ministry of Defence}}|language=英語|accessdate=2008-01-06 }}</ref>。イギリス軍はイギリス本国と海外の領土を防衛しつつ、世界的なイギリスの将来的国益を保護し、国際的な平和維持活動の支援を任ぜられている。

2005年の時点で[[イギリス陸軍|陸軍]]は102,440[[イギリス空軍|空軍]]は49,210海軍[[イギリス海兵隊|海兵隊]]を含むは36,320名の兵員から構成されておりイギリス軍の190,000名が現役軍人として80か国以上の国に展開配置されている<ref>{{lang-en-short|Ministry of Defence}}{{PDFlink|[http://www.mod.uk/NR/rdonlyres/6FBA7459-7407-4B85-AA47-7063F1F22461/0/modara_0405_s1_resources.pdf Annual Reports and Accounts 2004-05]|1.60&nbsp;MB}}」2006-05-14 閲覧。{{En icon}}</ref>。

イギリスは[[核兵器]]の保有を認められている5カ国の1つであり{{仮リンク|国別軍事費の一覧|en|List of countries by military expenditures|label=軍事費は世界第5位又は第6位}}である<ref name="SIPRI">{{cite web |url=http://books.sipri.org/product_info?c_product_id=476 |title=The 15 countries with the highest military expenditure in 2013 (table) |publisher=[[:en:Stockholm International Peace Research Institute|Stockholm International Peace Research Institute]] |format=PDF |accessdate=4 May 2014 |archiveurl=https://web.archive.org/web/20150104033821/http://books.sipri.org/product_info?c_product_id=476 |archivedate=2015年1月4日 |deadlinkdate=2018年3月 }}</ref><ref name="iiss.org">[http://www.iiss.org/en/about%20us/press%20room/press%20releases/press%20releases/archive/2014-dd03/february-0abc/military-balance-2014-press-statement-52d7 The Military Balance 2014:Top 15 Defence Budgets 2013] (IISS)</ref>。[[核弾頭]]搭載の[[トライデント (ミサイル)|トライデント II]] [[潜水艦発射弾道ミサイル]] (SLBM) を運用している。イギリス海軍は、トライデント IIを搭載した[[原子力潜水艦]]4隻で[[核抑止]]力の任務に担っている。
{{See also|イギリスの大量破壊兵器}}

イギリス軍の幅広い活動能力にも関わらず最近の国事的な国防政策でも協同作戦時に最も過酷な任務を引き受けることを想定している<ref>{{lang|en|Office for National Statistics}}{{lang|en|UK 2005:The Official Yearbook of the United Kingdom of Great Britain and Northern Ireland}}p. 89 {{En icon}}</ref>イギリス軍が単独で戦った最後の戦争は[[フォークランド紛争]]で全面的な戦闘が丸々3か月続いた現在は[[ボスニア紛争]][[コソボ紛争]][[アフガニスタン紛争 (2001-)|アフガニスタン侵攻]][[イラク戦争]]などアメリカ軍やNATO諸国との[[連合作戦]]が慣例となっているイギリス海軍の軽歩兵部隊であるイギリス海兵隊は[[上陸戦|水陸両用作戦]]の任務が基本であるがイギリス政府の外交政策を支援するため軽歩兵部隊の特性を生かして海外へ即座に展開できる機動力を持つ

==経済==
{{main|イギリスの経済}}
[[国際通貨基金|IMF]]によると2015年のイギリスの[[国内総生産|GDP]]は2兆8584億ドルであり世界5位欧州では[[ドイツ]]に次ぐ2位である<ref name="GDP1">[https://www.imf.org/external/pubs/ft/weo/2016/02/weodata/weorept.aspx?sy=2015&ey=2015&scsm=1&ssd=1&sort=country&ds=.&br=1&c=112&s=NGDPD%2CNGDPDPC&grp=0&a=&pr.x=28&pr.y=7 World Economic Outlook Database, October 2016] IMF 2016年11月{{0}}3日閲覧。</ref>。同年の一人当たりのGDPは4万3902ドルである<ref name="GDP1"/>。[[人間開発指数]]は[[人間開発指数による国順リスト|世界第14位]]で「非常に高い」に分類される。

[[ファイル:City of London skyline from London City Hall - Oct 2008.jpg|thumb|250px|ロンドンは2016年に発表された世界の都市総合力ランキングにおいて世界1位と評価された<ref>[http://www.mori-m-foundation.or.jp/ius/gpci/ 世界の都市総合力ランキング(GPCI) 2016] 森記念財団都市戦略研究所 2016年10月31日閲覧。</ref>]]
首都ロンドンは2016年時点で[[ニューヨーク]]を上回る世界一の金融センターと評価されている<ref>[http://www.longfinance.net/global-financial-centres--20/1037-gfci-20.html Global Financial Centres Index 20] Z/yen 2016年11月{{0}}3日閲覧。</ref>。ロンドンの[[シティ・オブ・ロンドン|シティ]]には、世界屈指の[[証券取引所]]である[[ロンドン証券取引所]]がある。イギリスの[[外国為替市場]]の1日平均取引額はアメリカを上回り、世界最大である<ref>[http://www.bis.org/publ/rpfx16.htm Triennial Central Bank Survey of foreign exchange and OTC derivatives markets in 2016] 国際決済銀行(BIS) 2016年11月{{0}}3日閲覧。</ref>。[[富裕層|富裕層人口]]も非常に多く、金融資産100万ドル以上を持つ富裕世帯は約41万世帯と推計されており、アメリカ、日本、[[中華人民共和国|中国]]に次ぐ第4位である<ref name="Rich">[http://www.bcg.com/expertise_impact/publications/PublicationDetails.aspx?id=tcm:12-107081 BCG Global Wealth 2012]</ref>。また、金融資産1億ドル以上を持つ超富裕世帯は1,125世帯と推計されており、アメリカに次ぐ第2位である<ref name="Rich"/>。

[[18世紀]]の産業革命以降近代において[[世界経済]]をリードする[[工業国]]で[[造船]]や[[航空機]]製造などの[[工業|重工業]]から金融業や[[エンターテインメント|エンターテイメント]]産業に至るまで様々な産業が盛んである歴史的に造船業は特筆に値し[[複式機関#船舶用複式蒸気機関の例|三段膨張機関]]が登場してから第一次世界大戦勃発までは世界の船の三分のニを生産した<ref>柏戸傳、「[https://hdl.handle.net/11266/1231 大戦間期日・英造船業の企業金融]」『立正経営論集』 2005年 37巻 2号, 立正大学経営学会</ref>。

しかしながら19世紀後半からはアメリカ合衆国ドイツ帝国の工業化により世界的優位は失われたイギリスを含む世界金融資本がイギリス製造業への投資よりドイツアメリカおよび植民地への投資を選好したためであるイギリス製造業はしだいにドイツフランスやアメリカ合衆国に立ち後れるようになってゆく20世紀に入るころより国力は衰え始め二度の世界大戦はイギリス経済に大きな負担を与えた各地の植民地をほとんど独立させた1960年代後半には経済力はいっそう衰退した

戦後の経済政策の基調は市場と国営セクター双方を活用する[[混合経済]]体制となり左派の労働党は[[ゆりかごから墓場まで]]と呼ばれる公共福祉の改善に力を入れ保守党も基本的にこれに近い政策を踏襲1960年代には世界有数の[[福祉国家論|福祉国家]]になったしかし[[オイルショック]]を契機とした不況になんら実用的な手立てを打たなかったために継続的な不況に陥り企業の倒産やストが相次いだ20世紀初頭から沈滞を続けたイギリス経済は深刻に行き詰まり、「[[英国病]]とまで呼ばれた

1979年に登場したサッチャー政権下で国営企業の民営化や各種規制の緩和が進められ1980年代後半には海外からの直接投資や証券投資が拡大したこの過程で製造業や[[鉱業]]部門の労働者が大量解雇され深刻な失業問題が発生基幹産業の一つである[[自動車]]産業の殆どが外国企業の傘下に下ったが外国からの投資の拡大をしだいに自国の産業の活性化や雇用の増大に繋げて行きその後の経済復調のきっかけにして行った[[ウィンブルドン現象]])。

その後1997年に登場したブレア政権における経済政策の成功などにより経済は復調しアメリカや他のヨーロッパの国に先駆けて好景気を享受するようになったがその反面でロンドンを除く地方は経済発展から取り残され[[貧富の差]]の拡大や不動産価格の上昇などの問題が噴出してきている

さらに2008年にはアメリカ合衆国の[[サブプライムローン]]問題の影響をまともに受けて金融不安が増大した上に資源食料の高騰の直撃を受け[[アリスターダーリング]][[財務大臣 (イギリス)|財務大臣]]が過去60年間で恐らく最悪の下降局面に直面していると非常に悲観的な見通しを明らかにしている<ref>{{Cite web|date=2008-08-30|url=http://sankei.jp.msn.com/economy/business/080830/biz0808301850007-n1.htm|work=産経新聞|title=「英経済、過去60年間で最悪の下降局面」英財務相|accessdate=2008-08-30 |archiveurl=https://web.archive.org/web/20080902012013/http://www.sankei.jp.msn.com/economy/business/080830/biz0808301850007-n1.htm |archivedate=2008-09-02}}</ref>。2012年{{0}}2月時点で失業率は8%を超えるまでに悪化した状態にあったが、その後は回復の兆しを見せている。

===鉱業===
[[ファイル:Oil platform in the North SeaPros.jpg|thumb|[[北海油田]]]]
イギリスの鉱業は産業革命を支えた[[石炭]]が著名である300年以上にわたる採炭の歴史があり石炭産業の歴史がどの国よりも長い2002年時点においても3193万トンを採掘しているもののほぼ同量の石炭を輸入している[[北海油田]]からの[[原油]]採掘量は1億1000万トンに及びこれは世界シェアの3.2%に達する最も重要なエネルギー資源は[[天然ガス]]であり世界シェアの4.3%第4位を占める有機鉱物以外では世界第8位となる[[塩化カリウム|カリ塩]] (KCl) 同10位となる[[塩]] (NaCl) がある金属鉱物には恵まれていない最大の[[鉛]]鉱でも1000トンである

===農業===
最も早く工業化された国であり現在でも高度に工業化されている農業の重要性は低下し続けておりGDPに占める農業の割合は2%を下回ったしかしながら世界シェア10位以内に位置する農産物が8品目ある穀物では[[オオムギ]]586万トン世界シェア10位以下2004年時点)、工芸作物では[[亜麻]]2万6000トン5)、[[テンサイ]]790万トン9)、[[アブラナ|ナタネ]]173万トン5)、[[ホップ]]2600トン6である家畜畜産品では[[ヒツジ]]3550万頭7)、[[ウール|羊毛]]6万5000トン5)、[[牛乳]]1480万トン9が主力

===貿易===
イギリスは産業革命成立後自由貿易によって多大な利益を享受してきたただし21世紀初頭においては貿易の比重は低下している2004年時点の貿易依存度すなわち国内総生産に対する輸出入額の割合はヨーロッパ諸国内で比較すると[[イタリア]]と並んでもっとも低いすなわち輸出16.1%輸入21.3%である

[[国際連合]]のInternational Trade Statistics Yearbook 2003によると品目別では輸出輸入とも工業製品が8割弱を占める輸出では電気機械15.2%2003)、機械類自動車医薬品原油輸入では電気機械 (16.3%)自動車機械類衣類医薬品の順になっている

貿易相手国の地域構成は輸出輸入ともヨーロッパ最大の工業国ドイツと似ている輸出入とも対EUの比率が5割強輸出においてはEUが53.4%2003)、次いでアメリカ合衆国15.0%アジア12.1%輸入においてはEU52.3%アジア15.1%アメリカ合衆国9.9%である

国別では主な輸出相手国はアメリカ合衆国15.0%2003)、ドイツ (10.4%)フランス (9.4%)オランダ (5.8%)アイルランド (6.5%)輸入相手国はドイツ (13.5%)アメリカ合衆国 (9.9%)フランス (8.3%)オランダ (6.4%)中華人民共和国 (5.1%) である
===不動産===
イギリスの不動産は人口の約1%の約25,000人の貴族や大企業などがイングランドの土地の48%を保有しており未申告は貴族が家族間で秘密裏に管理していた土地と考えられている
{|
|-
|法人企業
|style="text-align:right"|18
|<!-- 最上段 --><div style="width:180px;height:16px;background:#9999ff"></div>
|-
|銀行の経営者寡頭政治家
|style="text-align:right"|17
|<!-- 2段目 --><div style="width:170px;height:16px;background:#9999ff"></div>
|-
|公的機関
|style="text-align:right"|8.5
|<!-- 3段目 --><div style="width:85px;height:16px;background:#9999ff"></div>
|-
|住宅保有者
|style="text-align:right"|5
|<!-- 4段目 --><div style="width:50px;height:16px;background:#9999ff"></div>
|-
|慈悲団体
|style="text-align:right"|2
|<!-- 5段目 --><div style="width:20px;height:16px;background:#9999ff"></div>
|-
|王室
|style="text-align:right"|1,4
|<!-- 6段目 --><div style="width:14px;height:16px;background:#9999ff"></div>
|-
|イングランド教会
|style="text-align:right"|0.5
|<!-- 7段目 --><div style="width:5px;height:16px;background:#9999ff"></div>
|-
|未申告
|style="text-align:right"|17
|<!-- 最下段 --><div style="width:178px;height:16px;background:#9999ff"></div>
|}

===エネルギー政策===
{{main|{{仮リンク|イギリスのエネルギー|en|Energy in the United Kingdom}}}}

イギリスの原子力発電に対する中華人民共和国の投資と技術協力を積極的に推進することでエネルギー政策と経済力の強化に取り組んでいる<ref>[http://mainichi.jp/select/news/20151022k0000m030079000c.html 習主席:英首相と7兆円商談合意…人民元建てで国債発行へ] {{webarchive|url=https://web.archive.org/web/20151023155717/http://mainichi.jp/select/news/20151022k0000m030079000c.html |date=2015年10月23日 }}毎日新聞 2015年10月21日</ref>。2016年には、中国からの投資による原子炉の建造を承認した<ref>https://www.gov.uk/government/news/multimillion-boost-to-uk-economy-as-china-and-uk-government-sign-civil-nuclear-agreement-and-sign-agreement-to-deepen-cooperation-on-climate-change</ref>。

===通貨===
スターリングポンド (GBP) が使用されている補助単位は[[ペニー]]で1971年より1ポンドは100ペンスであるかつてポンドは[[アメリカ合衆国ドル|USドル]]が世界的に決済通貨として使われるようになる以前イギリス帝国の経済力を背景に国際的な決済通貨として使用されたイギリスの欧州連合加盟に伴いヨーロッパ共通通貨であるユーロにイギリスが参加するか否かが焦点となったがイギリス国内に反対が多く[[欧州連合の経済通貨統合|通貨統合]]は見送られたイングランド銀行が連合王国の[[中央銀行]]であるがスコットランドと北アイルランドでは地元の商業銀行も独自の紙幣を発行しているイングランド銀行の紙幣にはエリザベス女王が刷られており連合王国内で共通に通用するスコットランド紙幣北アイルランド紙幣ともに連合王国内で通用するが受け取りを拒否されることもある
2016年{{0}}6月24日1993年に加盟した欧州連合EUの脱退が国民投票によって正式に決定した

===企業===
{{main|イギリスの企業一覧}}

====通信====
{{Main|{{仮リンク|イギリスの情報通信|en|Telecommunications in the United Kingdom}}}}
イギリスではヒースロー空港などにある自動販売機で[[SIMカード]]が購入できる[[プリペイド|プリペイド式]]となっておりスーパーなどで通話通信料をチャージして使う

おもな通信業者
*[[ボーダフォン]] イギリス
*[[EE (企業)|EE]] ドイツ系の[[T-Mobile]]とフランス系(元イギリス)の[[Orange_(通信会社)|Orange]]([[:en:Orange (UK)|en]])の合弁で現在は[[BTグループ]]傘下
*[[O2]] スペイン[[テレフォニカ]]傘下
*3Three 香港[[ハチソンワンポア]]

==交通==
{{main|{{仮リンク|イギリスの交通|en|Transport in the United Kingdom}}}}

===道路===
{{main|{{仮リンク|イギリスの道路|en|Roads in the United Kingdom}}}}

自動車は[[対面交通|左側通行]]であるまたインドオーストラリア[[香港]][[シンガポール]]など旧イギリス植民地の多くが左側通行を採用している

===鉄道===
{{main|イギリスの鉄道}}
[[ファイル:Eurostar at St Pancras Jan 2008.jpg|thumb|国際列車[[ユーロスター]]の発着駅である[[セントパンクラス駅]]]]
近代鉄道の発祥の地であり国内には鉄道網が張り巡らされロンドンなどの都市には14路線ある[[地下鉄]]チューブトレイン網が整備されているしかし1960年代以降は設備の老朽化のために事故が多発しさらに運行の遅延が常習化するなど問題が多発している

小規模の民間地方鉄道の運営する地方路線の集まりとして誕生したイギリスの鉄道は19世紀から[[20世紀]]前期にかけて競合他社の買収などを通じて比較的大規模な少数の会社が残った1921年にはついに[[ロンドンミッドランドアンドスコティッシュ鉄道]][[ロンドンアンドノースイースタン鉄道]][[グレートウェスタン鉄道]][[サザン鉄道 (イギリス)|サザン鉄道]]の4大鉄道会社にまとまりこれらは1948年に国有化されて[[イギリス国鉄]] (BR) となったしかし[[1994|1994]][[1997|97年]]にBRは旅客輸送貨物輸送と線路や駅などの施設を一括管理する部門に分割されて民営化された

1994年開業したイギリスフランス両国所有の英仏海峡トンネルはイングランドのフォークストンからフランスのカレーまでイギリス海峡の海底130mを長さ50.5kmで走る3本の並行したトンネルからなる1本は貨物専用で残り2本は乗客貨物の輸送に使われるこのトンネルを使ってセントパンクラス駅からはヨーロッパ大陸との間を結ぶ[[ユーロスター]]が運行され[[パリ]]や[[ブリュッセル]][[リール (フランス)|リール]]などのヨーロッパ内の主要都市との間を結んでいる

===海運===
周囲を海に囲まれている上世界中に植民地を持っていたことから古くからの海運立国であり[[P&O]]や[[キュナードライン]]など多くの海運会社があるまた歴史上有名な[[タイタニック (客船)|タイタニック号]][[クイーンエリザベス2]]」、「[[クイーンメリー2]]などの著名な客船を運航している

===航空===
{{main|{{仮リンク|イギリスの航空|en|Air transport in the United Kingdom}}}}

[[ファイル:Heathrow Terminal 5C Iwelumo-1.jpg|thumb|[[:en:London Heathrow Terminal 5|London Heathrow Terminal 5]]. [[ロンドンヒースロー空港]]は[[:en:World's busiest airports by international passenger traffic|国際線利用客数]]では世界随一である]][[ファイル:Airbus A380-841 G-XLEB British Airways (10424102995).jpg|thumb|ブリティッシュエアウェイズ (イギリス最大の航空会社)]]


民間航空が古くから発達し特に国際線の拡張は世界に広がる植民地間をつなぐために重要視されてきた

現在は[[ブリティッシュエアウェイズ]]や[[ヴァージンアトランティック航空]]や[[イージージェット]]などの航空会社がある中でもブリティッシュエアウェイズは[[英国海外航空]]と[[英国欧州航空]]の2つの国営会社が合併して設立され1987年に民営化された世界でも最大規模の航空会社で2009年にはスペインの[[イベリア航空]]と統合合意し2011年に[[インターナショナルエアラインズグループ]]を設立した

航空機製造業も[[BAEシステムズ]]やエンジン製造の[[ロールスロイスホールディングス]]があり1976年にはフランスとともに[[コンコルド]]機を開発して世界初の[[超音速旅客機|超音速旅客]]輸送サービスを開始しかし老朽化とコスト高などにより2003年11月26日をもって運航終了となりコンコルドは空から姿を消した

主な空港としてロンドンのヒースロー空港[[ロンドンガトウィック空港|ガトウィック]][[ロンドンスタンステッド空港|スタンステッド]]のほか[[ロンドンルートン空港|ルートン]][[マンチェスター空港|マンチェスター]][[グラスゴー空港|グラスゴー]]などが挙げられる

日本との間には2016年サマースケジュールではヒースロー空港と[[成田国際空港|成田空港]]の間にブリティッシュエアウェイズのみ1日1便直行便を運航し[[東京国際空港|羽田空港]]の間にもブリティッシュエアウェイズ[[日本航空]][[全日本空輸]]がそれぞれ1日1便直行便を運航しているかつてはヴァージンアトランティック航空が就航していたが2015年に撤退している

==科学技術==
{{Main|{{仮リンク|イギリスの科学技術|en|Science and technology in the United Kingdom}}}}

17世紀の科学革命はイングランドとスコットランドが18世紀の産業革命はイギリスが世界の中心であった重要な発展に貢献した科学者と技術者を多数輩出している[[アイザックニュートン]][[チャールズダーウィン]]電磁波の[[ジェームズクラークマクスウェル]]そして最近では宇宙関係の[[スティーブンホーキング]]科学上の重要な発見者には水素の[[ヘンリーキャヴェンディッシュ]][[ペニシリン]]の[[アレクサンダーフレミング]][[デオキシリボ核酸|DNA]]の[[フランシスクリック]]がいる工学面では[[グラハムベル]]など科学の研究応用は大学の重要な使命であり続け2004年から5年間にイギリスが発表した科学論文は世界の7%を占める学術雑誌[[ネイチャー]]や医学雑誌[[ランセット]]は世界的に著名である

==国民==
{{main|イギリス人|{{仮リンク|イギリスの人口統計|en|Demography of the United Kingdom}}}}
{{See also|{{仮リンク|イギリスの民族|en|Ethnic groups in the United Kingdom}}}}
[[ファイル:UKpop.svg|thumb|right|イギリスの[[人口ピラミッド]]]]
イギリスの人口は2015年時点で推計6,471万人であり[[国の人口順リスト|世界第22位]]である

イギリス民族という民族は存在しない主な民族はイングランドを中心に居住する[[ゲルマン人|ゲルマン民族]]系のイングランド人[[アングロサクソン人]])、[[ケルト人|ケルト]]系のスコットランド人アイルランド人ウェールズ人だが旧植民地出身のインド系[[印僑]])、[[アフリカ系]]カリブ系[[アラブ系]]や[[華僑]]なども多く住む[[多民族国家]]である

イギリスの国籍法では旧植民地関連の者も含め自国民を次の六つの区分に分けている
*GBR:British Citizen - イギリス市民
*:本国人
*BOTC:[[:en:British Overseas Territories citizen|British Overseas Territories citizen]] - [[イギリス海外領土市民]]
*:イギリスの海外領土出身者
*BOC:[[:en:British Overseas Citizen|British Overseas Citizen]] - [[イギリス海外市民]]
*:ギリシャ西岸の諸島インドパキスタンマレーシアなどの旧植民地出身者のうち特殊な歴史的経緯のある者
*GBS:[[:en:British Subject|British Subject]] - [[イギリス臣民]]
*:アイルランド北部以外)・ジブラルタルなどイギリス海外領土市民やイギリス海外市民とは別の経緯のある地域の住民で一定要件に該当する者
*BNO:[[:en:British National (Overseas)|British National (Overseas)]] - [[イギリス国民海外]]※「BN(O)とも書く
*:英国国籍で香港の[[永住権|住民権]]も持つ人
*BPP:[[:en:British Protected Person|British Protected Person]] - [[イギリス保護民]]

いずれの身分に属するかによって国内での様々な取扱いで差異を生ずることがあるほかパスポートにその区分が明示されるため海外渡航の際も相手国により取扱いが異なることがある例えば日本に入国する場合British citizen本国人とBritish National (Overseas)英国籍香港人は短期訪問目的なら[[査証]]ビザ不要となるが残りの四つは数日の[[観光]]訪日であってもビザが必要となる

===言語===
{{main|{{仮リンク|イギリスの言語|en|Languages of the United Kingdom}}}}
[[ファイル:Anglospeak.svg|thumb|250px|世界の[[英語圏]]地域濃い青色は英語が[[公用語]]または事実上の公用語になっている地域薄い青色は英語が公用語であるが主要な言語ではない地域]]
事実上の公用語は英語イギリス英語でありもっとも広く使用されているがイングランドの主に[[コーンウォール]]でコーンウォール語ウェールズの主に北部と中部でウェールズ語スコットランドの主に[[ローランド地方]]でスコットランド語ヘブリディーズ諸島の一部でスコットランドゲール語北アイルランドの一部で[[:en:Ulster Scots dialects|アルスタースコットランド語]]とアイルランド語が話されておりそれぞれの構成国で公用語になっている

特にウェールズでは1993年にウェールズ語が公用語になり英語と同等の法的な地位を得た2001年現在ウェールズ人口の約20%がウェールズ語を使用しその割合は僅かではあるが増加傾向にある公文書や道路標識などはすべてウェールズ語と英語とで併記されるまた16歳までの義務教育においてウェールズ語は必修科目でありウェールズ語を主要な教育言語として使用し英語は第二言語として扱う学校も多く存在する

===宗教===
{{See also|イギリスの宗教}}
10年に一度行われるイギリス政府の国勢調査によれば2001[[キリスト教徒]]が71.7%[[イスラム教徒]]が3.0%[[ヒンドゥー教]]徒が1.0%
2011キリスト教徒59.3%イスラム教徒4.8%ヒンドゥー教徒が1.5%<ref>{{Cite report |publisher=Office for National Statistics |title=Religion in England and Wales 2011 |date=2012-12-11 |url=https://www.ons.gov.uk/peoplepopulationandcommunity/culturalidentity/religion/articles/religioninenglandandwales2011/2012-12-11 }}</ref>。

キリスト教の内訳は[[英国国教会]]が62%[[カトリック]]が13%[[長老派]]が6%[[メソジスト]]が3%程度と推定されている<ref>The Changing Religious Landscape of Europe Hans Knippenberg</ref>

===婚姻===
婚姻の際には夫婦同姓複合姓[[夫婦別姓]]のいずれも選択可能であるまた[[同性結婚]]も可能である<ref>英国イングランドとウェールズ同性婚を初の合法化朝日新聞2014年{{0}}3月29日</ref>また在日英国大使館においても同性結婚登録を行うことが可能である<ref>在日本英国大使館領事館で同性婚登録が可能に 週刊金曜日 2014年{{0}}6月13日</ref><ref>https://www.gov.uk/government/news/introduction-of-same-sex-marriage-at-british-consulates-overseas.ja</ref>。

===移住===
{{main|{{仮リンク|現代イギリスにおける移民|en|Modern immigration to the United Kingdom}}|{{仮リンク|イギリスにおける外国人出生者|en|Foreign-born population of the United Kingdom}}}}
{{節スタブ}}
===教育===
{{main|イギリスの教育}}
イギリスの学校教育は地域や公立私立の別により異なるが5歳より小学校教育が開始される

===医療===
{{Main|イギリスの医療}}
[[ファイル:Royal Aberdeen Children's Hospital.jpg|thumb|right|The Royal Aberdeen Children's HospitalNHSスコットランドの小児病院]]
イギリスの医療は各地域それぞれの[[地方分権]]型であり公的医療とプライベート診療が存在する公的医療は[[国民保健サービス]]NHSによりすべてのイギリス人に提供され医学的必要性が認められる治療は大部分は自己負担なしであり費用は一般税収を原資としている[[公費負担医療]])。NHSにはイギリス国家予算の25.2%が投じられている<ref name="ohe">{{Cite report |publisher=Office of Health Economics |title=OHE Guide to UK Health and Health Care Statistics |date=2013-08 |url=https://www.ohe.org/publications/ohe-guide-uk-health-and-health-care-statistics }}</ref>。

国全体にかかわる規制は{{仮リンク|総合医療評議会|en|General Medical Council}}や{{仮リンク|看護助産評議会|en|Nursing and Midwifery Council}}やまた[[ロイヤルカレッジ]]などの外部機関が行っているしかし政策や現業の責務は各地方行政区である4つの女王陛下の政府北アイルランド政府スコットランド政府ウェールズ政府がそれぞれになっているそれぞれの運営するNHSは各々の政策や優先度を持ち施政に違いをもたらしている<ref>{{cit