11月第2週の振り返り

11月第2週(11/4-11/10)

フランス法文献講読

Code de 1804: ナポレオン民法

n. + différent: さまざまな~

au sein de: ~の中に

de+無冠詞の時とdu/de la/desの時があるが、慣用的に熟語化している場合は冠詞がつかないように思われる(先生の談)。

フランス法においては契約の分類としてcontrat de gré à gré(談合契約:平等な立場で話し合って締結する)とcontrat d'adhésion(附合契約:一方が定めた条件を他方が呑む)が区別されている。またcontrat commutatif(等価交換契約:双方の提供するものが均衡している)とcontrat aléatoire(射幸契約:保険契約など提供するものが均衡でない)という有償契約の下部分類がある。これはそれぞれで扱いが異なるというよりは、違いを論じる際に用いるようである。さらに日本法のように契約の更新を行うのではなく、contrat-cadre(枠契約:継続的な契約を行うことを定める契約)とcontrat d'application(実施契約:個々の契約)で分かれており、時効の扱いで意味を持ってくる。

担保物権

一般債権者による債権回収には、債務名義の獲得が必要であり、また他の差し押さえ・配当を要求する債権者と平等に按分されるという制約がある。これに対して担保物権を用いると、物を留置(占有担保について、弁済されるまで預かる)・換価代金の優先弁済(非占有担保)が認められる。

担保物権のうち抵当権は、当該不動産が競売にかけられたとき優先的に弁済を受けられるもので、非占有担保である(設定後も債務者は不動産の利用を継続できる)。設定の要件は設定契約(「約定担保」)、および当然ながら被担保債権の存在である。

ところが継続的に融資を行っている場合など、毎回抵当権設定登記を行うのは不経済であるといった理由で設定される根抵当権はこの被担保債権の存在(成立における附従性)の例外である。

土地の抵当権は建物には及ばず、建物の抵当権は借地権に及ぶが、土地所有権には及ばない。

並列プログラミング

OpenMPは1ノードの中でできるだけ並列処理を行わせるものだが、大規模ノードを用いた複数プロセスによる処理では、ノード間通信のためMPIを必要とする。

MPI_Allgather関数はすべてのプロセスで同じ変数を共有するもので、行列-ベクトル積において各プロセスに分散されてしまった列ベクトルを集めて元に戻す時に使う。ただし今回は行列・ベクトルとも全てのプロセスに完全なものが存在する(データ分散しない)ものとしてノード間並列化を行う。そのため通信は行う必要がない。

自分のプロセスID、全プロセス数はMPI_Comm_Rankを呼び出して取得でき、これを(プロセス内の)グローバル変数とすることで関数内で呼び出せてプロセス間の分担が図れる。

y=Axを分担させるには、Aを小さな行群に分割しその一部だけを計算させることになる。すなわち0~N 0~NのところをmyProcID*N/procsCount~(myProcID+1)*N/procsCount 0~Nにする。1088プロセスで計算だけ(集計通信はせず)の処理速度は700倍ほどになった。

Nがプロセス数の倍数である保証はない。その場合素朴な案としては最後のプロセスだけmyProcID*N/procsCount~Nを計算させることが考えられるが、N=k(procsCount)-1であった場合、procsCount-1個のプロセスではk-1回計算、最後のプロセスだけk-1+procsCount回計算することとなり、プロセス数が増えれば増えるほど負荷が不均衡になる。そのため(N+procsCount-1)/procsCountとすることで商を切り上げ、不均衡を解消することが望ましい。

法医学

窒息には肺胞でのガス交換阻害(外窒息)だけでなく血液-組織間のガス交換阻害も含まれる(内窒息)が、法医学上は器械的に外窒息が引き起こされることを指すことが多い。窒息後仮死の段階で人工呼吸等の措置を行えば蘇生可能性がある。窒息の所見は急死の三徴(暗赤色流動血、内臓鬱血、粘膜の溢血点)と同一である。流動血は急死の際に生じる繊維素溶解酵素の増加現象による。

息苦しさは動脈血の二酸化炭素濃度に依存する。そのため低酸素環境では無自覚で卒倒し死亡することとなる。

胸郭圧迫による窒息は人混み、家屋倒壊などで生じる。鼻口閉鎖は特に乳幼児で布団などによって生じやすい。ただしSIDSとの鑑別が困難である。

気道内閉塞は異物または気道粘膜出血によって判断する。

扼死では静脈が閉鎖されるが動脈は完全に閉塞しないため顔面が鬱血する。また甲状軟骨骨折などがみられることもある。

溺死には反射的な咽頭痙攣による低酸素状態による乾性溺水、意識を失い水が肺に入る湿性溺水がある。多くの場合は後者である。肺には界面活性物質(サーファクタント)があり、淡水吸引時はこれが破壊され肺胞に障害をきたす。高カリウム血症も引き起こされる。また低張の状態となるため溶血が生じる。

海水吸引では逆に血漿が肺胞に引っ張られ肺水腫を起こす。溺死の診断には泡沫塊、溺死肺、プランクトン、血液比重・塩素イオン濃度などが用いられるが、確実な決め手がない場合も多く死因不明とせざるを得ない時もある。

ネットワーク論

関心を持って受講していた授業だったので、苦もなく簡単に見直しが終わり、試験も問題なく終えられた。秀相当の成績が取れていることを願う。

10月第5週・11月第1週の振り返り

10月第5週・11月第1週(10/28-11/3)

フランス法文献講読

教材の中から興味のあるトピックを選んで授業一回分の発表をするということで取り組み始めたところ、扱われている判決が(単独で)尋常でない分量であり、ここから要旨を読み取って補足とするには途方もない時間がかかると見込まれるので逡巡している。

債権総論

ある債権の弁済を担保するために別の債権を当該債権の債権者に譲渡することを債権譲渡担保という。

債権譲渡の目的物となる債権が譲渡時点で未発生の場合(将来債権譲渡、事業開始後に発生すると期待される債権を担保にして借り入れをする場合など)、譲渡契約の有効性において債権発生の可能性は問題にならない(譲渡人の責任を追及すれば足りる)というのが判例である。ただし譲渡する将来債権の期間が著しく長く取引の自由を拘束するなど公序良俗違反により無効となることはある。譲受人は未発生の債権について発生時点ではなく譲渡時点で対抗要件を具備することができる。

債権譲渡登記は通知または承諾なしに第三者対抗要件を具備することになるとはいえ、証明書交付と通知によって債務者対抗要件を具備しなければ拒絶されうる(債務不履行責任の追及や不当利得返還請求が可能)。

債権質は譲渡担保と異なり弁済期が到来してから取立権限が取得される上、その権限は被担保債権額までに限定される。

譲渡制限特約のついた債権を譲渡するにあたっては、譲渡制限特約が債権者の固定という債務者の利益を目的としたものであるから、債務者対抗要件を具備する前に特約が結ばれたならば譲受人に対抗できるとされる。

譲渡・質入制限特約がある場合、譲渡によって自らの債務を弁済することはできないが、代わりに取り立てを委任(代理受領)することによって似た効果を得ることができる。

債権の相殺の意思表示を行う(=自働債権となる)には自己の保有する債権が弁済期を迎えていなければならない。505条では双方の弁済期到来が条件とされているが、判例上は自働債権だけでよい。意思表示を行う側が負っている債務がまだ弁済を行わなくてよい(期限の利益)とはいえ、自らそれを放棄することは自由だからである。

この意思表示の時点で相殺適状である必要がある(消滅時効にかかっていた場合は時効完成前に相殺適状が生じていたことが必要だが、相殺は可能)。

この相殺期待の担保的機能は強力で、破産時にも財産分配に先んじて(保有債権の弁済期が来ていなくても)相殺してしまえる(正確には論理が逆で、相殺はそのような効果を持つので担保として強力であると考えられている)。

相互性を満たさない三角相殺は原則として認められない(最判平28・7・8民集70巻6号1611頁)。

並列プログラミング

ループアンローリングはループの中で複数回分の命令を冗長に記述してループの回数、ひいては終了条件チェックの回数を削減し、また複数回の命令の間で値キャッシュを活用することで性能を向上させている。

一方ブロック化はよりハードウェアに近づいた最適化手法で、プロセッサのL1キャッシュを最大限に活用することを目的とする。キャッシュは複数のキャッシュラインからなり、そのラインサイズは現時点で64バイト=double 8個分であり、それを超えて行方向アクセスをしてもキャッシュに存在せず(キャッシュミス)、メモリから逐次(キャッシュの内容を一要素ごとに入れ替えているため)読み出す必要がある。そこである程度のブロック幅を定めて、キャッシュに載る範囲で部分的に計算し、次のブロックに移動して足していくようにするとキャッシュミスの頻度が減り、ナイーブなコードの2-3倍程度速くなる。

IntelコンパイラではOpenMP pragmaを解釈させるオプションは-qopenmpで、gccの-fopenmpとオプション名が違う。Intelコンパイラに-O3 -xMIC-AVX512で最適化させて行列-行列積を計算させると、上記-O0でブロック化したものより数百倍速く、コンパイラの高度な自動最適化の恐ろしさを実感した。

法医学

司法解剖司法警察員が鑑定処分許可状を裁判所から得てから行うが、死因身元調査法による解剖では警察署長の判断でできるようになった。

死体現象(postmortem change)は時間経過による変化だけでなく、死の確実な根拠としての意義がある。腐敗現象が発現する前の早期死体現象と、その後の晩期死体現象、また異常環境下での異常死体現象に分けられる。

早期死体現象としては

  • 体温冷却

外気温に近づく。死直後から12時間まで急速に低下、発熱・興奮剤(上昇)や失血死(低下)により変動する。Henssgeノモグラムで直腸温と環境温と体重から死後経過時間が推定できる。

  • 血液就下

重力に従って血液が降り、毛細血管の圧迫により死斑が生じる(30分~2時間で発現し、その後動かされると時間に応じて消失再発現→両側性死斑→固定)。そのため圧迫部位には発現しない。重力と圧力によって位置が変わるために、体位や圧迫が推定できる。また発現度によって失血の有無がわかる。色調によって特定の化学物質中毒の推定が可能なこともある。窒息死の場合点状出血を伴う。

  • 乾燥

徐々に褐色で硬くなる(革皮様化)。指先、口唇など先端部に顕著。

  • 角膜混濁

乾燥による角膜たんぱく質の変性が原因で、虹彩・瞳孔が不明確になる。

  • 硬直

一度弛緩し、時間経過(2時間以降発現)でATP濃度減少により硬直、その後数日でアクトミオシン分解による緩解となる。8時間以上経過すると再硬直しなくなる。立毛筋もこの時硬直するため鳥肌になる。

晩期死体現象として

  • 自家融解

酵素によって細胞の自己消化・溶血などが生じる

  • 腐敗

10℃以下、38℃以上で抑制される。栄養状態や血液量に左右される(魚の血抜きはこれを利用する)空気の流通が少ない場所では遅くなる。色の変化は硫化ヘモグロビンによる。腐敗ガスにより体が膨張する。数日で緑変し一週間以後腐敗が進行する。

  • 動物による損壊

野外環境やペット・鼠の生息環境で生じることがある。またハエは死後昼間に迅速に産卵するとされる。

異常死体現象としてミイラ化(乾燥が腐敗よりも早く進行し細菌繁殖が停止)、死蝋化(高湿環境で数か月以降脂肪組織が浸潤)がある。

ネットワーク論

ポート番号によってどのサービス/アプリケーションに宛てたものかを識別する。www.abc.x-univ.ac.jpの場合、日本-大学組織-x大学-abc部署-ホスト名wwwという構造になっている。wwwはWWWサーバの識別子ではなく、自由に付けられるホスト名であることは認識していなかった。

このドメイン名に対応するIPアドレスを尋ねられたルートDNSサーバは、jpのDNSサーバを示して問い合わせるよう返答する。jp DNSサーバはac.jpの...とこれを繰り返す。

このような問い合わせ(DNSクエリ)にはA(ドメイン名に対応するIPアドレス)・PTR(IPアドレスに対応するドメイン名)・NS(望みのドメイン名について知っているDNSサーバ)・MX(ドメイン名に対応するメールサーバ)がある。

DNSサーバは通常、応答の高速化のためキャッシュを参照し、存在しなければ権威サーバに問い合わせる。この問い合わせに対する権威サーバの応答になりすまし、実在のドメイン名に不正なIPアドレスを対応させてキャッシュさせるのが従来のDNSキャッシュポイズニングであった。

存在しないドメイン名を問い合わせ、「そのドメイン名について参照すべき権威サーバ」を知らせる権威サーバの応答になりすまし、偽の権威サーバに誘導するのがKaminsky Attackという手法であり、毎回異なる(存在しない)ドメイン名を問い合わせられるためキャッシュが切れるのを待つ必要がなく従来よりも効果的な攻撃であるとされる。

10月第4週の振り返り

10月第4週(10/21-10/27)

フランス法文献講読

条はarticle(art.)で、項はalinéa(al.)である。フランス語もetを使うのでet aliīと混同しそうだ。A tandis que Bは「Bであるのに対しA」という訳もあるが、単に並列として「Aであると同時にB」とすることも多い。

フランスでも債権は法律から生じる債権(法定債権)と契約から生じる債権(定着していない呼称だが契約債権)の二種類からなる。

accord de volontés: 意思の合致(ドイツ法でいう意思表示)
responsable(n.m.): 責任主体

1370を年号の場合はmille trois cent soixante-dixと読むことが多いが、条文ではtreize cent soixante-dixと読むことが多いらしい。また法典の見出し(Titre)の番号は序数で読むとのことである。

日本では第123条、第123条の2、となっていくがフランスでは123の1条(123-1)、123の2条(123-2)と続く。

否定のneが必ずpasなど(なお北鎌フランス語講座を見てみたところこのpasは"歩み"のpasそのもので、「一歩も…ない」が原義だそうである)を伴えばよいのだがそうではないため、虚辞のneを見分けることが難しい。

il existe de ~では非人称のilとして「~がある」となり、しばしば前の文中の語を受けてil en existe de ~とする。

Primus, Secundusが日本語で言う甲、乙として使われている。stricto sensuという表現も別の文中で用いられておりラテン語に出会えて嬉しかった。

hypothèseは法学上は「ケース」として使われることが多い。

債権総論

債権者が(債権者・受領権者以外への)誤弁済によって利益を受けた場合、その限度で債務が消滅する。また受領権者としての外観を有し弁済者が善意無過失(注意義務を遂行)であった場合も例外的に債務の消滅が認められる。

弁済の受領者が受領権者でなかった場合は非債弁済となり、不当利得の返還請求を行う権利がある。ここで受領者が無資力であった場合のリスクは債務者が負う(返還を受けられず二重に弁済する)。

代物弁済は債権者と債務者双方の合意が必要である(改正で諾成契約であることが明示された)。

 債権譲渡によって債権者=弁済先が変更され、また契約債権であれば契約の相手方と債権者が異なることになる。債務の履行を請求するには譲渡人から債務者への通知か、債務者の承諾が必要で、譲受人からの通知では対抗要件を満たさない。譲渡前の通知は無効である(譲渡前の承諾は有効)。

従来は譲渡を「異議をとどめない承諾」することで抗弁の喪失が生じ得ていた(旧民468条1項)が、積極的に抗弁権を放棄する意思表示をしているわけでもないのに抗弁の切断が生じることは債務者にとって不利であり、債権法改正において削除された。

債権譲渡が第三者対抗要件を満たすには、確定日付のある証書による通知・承諾が必要である。ない場合で双方債務者対抗要件を満たす場合、どちらに弁済しても有効な弁済であり、弁済を受けられなかった側は受けた側に対抗(第三者対抗)できないので履行は拒絶できるというのが通説であるらしい。片方が第三者対抗要件を満たしている場合、満たさない(劣後する譲受人)側を拒絶しなければならず、弁済した場合二重弁済を行う羽目になる。

並列プログラミング

今週はない。

法医学

今週はない。

ネットワーク論

異なるルーティングプロトコルで異なる経路が指定された場合はEBGP>OSPF>IBGP>RIPという優先度が標準的(実装によって異なる)。

トランスポート層(L4)にはTCPUDPが該当する。ポート番号が重要となる。ポート番号はホスト上での宛先アプリケーションを示す。

TCPヘッダに含まれる情報としてデータ列の番号であるシーケンス番号がある。データの順番を示すものだが、推測可能にならないよう疑似乱数を使うことが多い。その理由は3-way handshakeでは相手のシーケンス番号に1を足してACKを返すのであるが、害意のある送信者が自分のIPアドレスを偽ってSYNを送り、SYN+ACKが偽IPアドレスに送られ害意の送信者には返ってきていないにも関わらず、SYN+ACKのシーケンス番号が推測可能であればそれに1を足してACKを送って通信を確立してしまうことが可能だからである。

L2を流れるフレームの中にFCSMACヘッダとペイロードがあり、例えばHTTP通信のペイロードにはL3のIPヘッダ、L4のTCPヘッダ、L7のHTTPヘッダとアプリケーションデータが入る。小さい塊から順番にHTTPパケット(データ+HTTPヘッダ)、TCPパケット、IPパケットと呼ばれる。

TCP/IPの階層としてはいくつかのOSIレイヤがまとめられ、ネットワークインタフェース層(L1/2 Ethernet等)・インターネット層(L3 IP)・トランスポート層(L4 TCP)・アプリケーション層(L5/6/7 HTTP等)と称される。

高速な通信のためには連続して送受信するデータの最大サイズ=Window sizeを大きくしたいが、相手の処理速度・輻輳によって小さくする必要も生じる。この輻輳制御アルゴリズムにはTahoe・Reno・Vegas・CTCPなどがある。

ICMPはpingで使われるが、本来はエラー制御を通達するためのものである。IPの機能の一部なのでL3プロトコルとされる。

シーケンス番号や初期Window size、正しくないTCPフラグを送った時の返答はOSの種類・バージョンごとに差異があり、OS Fingerprintと呼ばれ攻撃に利用される。

10月第3週の振り返り

10月第3週(10/14-10/20)

フランス法文献講読

今週はない。

債権総論

債務が存在しない場合には非債弁済となり、錯誤により弁済したときは不当利得の返還請求ができる。徳義上の債務など、債務の不存在を知っていたときは請求できない。

複数個の債務を負担する場合、そのすべてを消滅させるに足りない弁済をいかに充当するかが問題となる。合意(490条)、指定(488条1項・2項)がなされない場合は法定充当(488条4項)となり、弁済期が到来したものの中で債務者にとって利益の大きいもの(額が大きいもの(4号)からではない)から充当される(1号)。利息付き債務は費用・利息・元本の順に充当される。

弁済にあたって債権者の協力が得られない場合(賃料の受け取り拒否、作物の買い取り拒否など)、債務不履行のリスクを債務者に負わせるのは酷であるという観点から、弁済の提供をした債務者は損害賠償責任を負ったり契約解除されたり、利息や遅延損害金・違約金・担保権実行も発生することはない(492条)。

ただし弁済の提供だけをもって債権が消滅するわけではなく、供託が必要である(494条)。

並列プログラミング

コンパイラは自動的に複数回使われる配列要素をレジスタに格納するように最適化してくれるはずだが、そうでないこともあるので明示的に変数に代入するほうがよいとのこと。

Oakforest-PACSに積まれているMCDRAMは高帯域幅であるがレイテンシはDDR4より大きいため、単一の配列要素を持ってくる際はDDR4の方が早いという結果になる。

法医学

インフォームド・コンセントの原点は国民皆保険でない米国において医療サービスを患者が買うところにある。日本では医師が治療法を決定することが多く患者は従来説明を求めてこなかったという。

日本では医師法で犯罪性があるものと判断した場合のみ届け出ることになっているので、長らく広尾病院事件の判決以降「外表に異状がなければ届け出なくてよい」という誤った(医師・警察の取り扱い上便利な)解釈が広まっていたが、2019年に入って厚労省の「医師による異状死体の届出の徹底について」という通知の中で、外表に異状所見がなくとも、経緯・現場状況などの事情を考慮することを求めており、外表異状説が明確に否定され改善がみられた。

医療事故の異状死届け出は犯罪の自首かのように認識されている(犯罪発見に偏った死因究明制度)。医療版事故調査委員会が制度化されたが、院内事故調が病理解剖を行った結果を報告するもので、法医解剖でもないため有効性が疑問視されている。

また司法解剖の結果開示が不十分で、遺族との示談にも用いることができない問題がある(司法解剖を経ても証拠として用いられる刑事訴訟になりづらく、刑事訴訟にならないで民事訴訟だけ行われると司法解剖結果は開示されない)。死因・身元調査法下の解剖では報告書が証拠に封じられることがないので、活用されることが期待される。

諸外国では臓器移植においてもドナーの権利擁護のため異状死ドナーの解剖要否を法医学者が判断し、必要であれば臓器摘出後に解剖・死因究明が行われる。

ネットワーク論

ホストは通常ルータ=デフォルトルート(route)への経路のみを知っており、どの方面にパケットを投げればよいかはルータが詳細な経路表を構成して判断する。ルータは自分の下部にあるネットワークの中(動的経路制御では自動的にルータ間で経路情報が交換されるので、下部にどのようなネットワークアドレスがあるのか把握している)宛てのものについて、ルータが属するネットワークならデータリンクで繋がっているためそのまま配送し、属さないなら下流のルータに取り扱いを任せるため下流ルータをネクストホップ(転送先)とする。上流のことを下流が把握すると無駄が生じるので、下部にないネットワーク宛てのものはすべて上流のルータ(デフォルトルート)に渡す。

RIPに代表される距離ベクトル型経路制御プロトコルでは、Bellman-Ford法(O(VE))を用いて定期的に経路情報を広告する。小規模ネットワークに向く。

OSPFに代表されるリンク状態型経路制御プロトコルでは、Dijkstra法(O(V+ElogE)によってネットワーク内の全ルータで各ルータのリンク情報を共有する(ネットワーク全体にfloodingする)ことで、一回経路が確立すれば後は変化情報のみ伝える。そのため恒常的なトラフィックが減り、大規模なネットワークに向く。

しかしながら単一のOSPFドメインで全世界を接続することは非現実的であり、経路制御プロトコル(Interior Gateway Protocol)を共有するネットワークの集合をAutonomous Systemとしてグループ化し、グループ内に障害を局限する・AS間で(External Gateway Protocol:現行BGP4)経路を集約することを実現している。

BGPはパスベクトル型の経路制御プロトコルであり、ホップ数ではなく経路そのものを順に広告し、受け取った側が最短パスを選択して次に広告していく。AS経路はtraceroute -Aオプションで確認できる。

しかしBGPの経路情報が真正なものと確認する方法はない(e.g. 経路ハイジャック)ため、情報を蓄積するデータベースInternet Routing Registryを設けて正当性の確認、連絡先情報の記載などを行っている。

10月第2週の振り返り

10月第2週(10/7-10/13)

フランス法文献講読

フランス債権法においてはobligationが債務を、obligationsが債権債務、l'obligationが債権債務関係(=le rapport d'obligation)を指すことが多いとのことで、解釈に当たってはわずかな表記の違いに気を配らなければならないことを理解した。またcôté actif/côté passifというのは法律関係の積極的側面(権利を有している、債権債務関係で言えば債権)・消極的側面(義務を負う、債務)のことを意味している。

loiは議会で審議し修正される法案であり、ordonnanceは行政である司法省によって起草され委任立法として議会は承認するか否かを決定する法である。ordonnanceはratifiée(追認)されなければならない。

債権総論

債務不履行に基づく損害賠償は、債務不履行と因果関係にある「通常損害」、また通常の因果関係にはないが特別な事情によって生じた特別損害のうち、その特別な事情を債務者が予見できた(と立証できる)場合にはその損害も賠償義務に含まれる。予見できたといえない場合には請求が認められないのは、その損害の原因が当該不履行以外にも無数に存在しうるため、債務不履行に基づく損害賠償が目的としている契約が意図していた利益状態の実現とはいえないことが理由である。

履行遅滞で賠償を請求できる損害には、例えば履行遅滞により転売利益が減少した場合の減少分と違約金、賃貸物件の引き渡し遅延により賃貸借契約の履行遅滞が生じて失った営業利益といったものがあげられる。

総じて債務不履行の損害賠償は履行利益賠償と呼ばれ、目的物の交換価値(当該目的物の現有価値など)、代替取引費用、喪失した転売利益と違約金、修補費用が含まれる。

目的物の市場価格が上下する場合、履行に代わる損害賠償は代金に加えて転売できなかったことによる逸失利益も含まれるとされていたが、価格高騰によって生じた逸失利益は当然には通常損害とはならず、騰貴の予見可能性が必要とされるようになる。(不履行から数年後に賠償請求を行ったとしても)履行不能当時の価格が原則である。しかしマイホームを名義移転前に他者に転売され、その後価格高騰したという事案(最判昭和47年4月20日)で、不履行がなければ買主は現に保有できていたはずだから、その損害は転売の意図がなくとも現有価値を基準として算定することとされた。これは動産ではない土地建物だからかもしれない。

逆に下落時においては、下落のリスクは不履行をした売主が負担すべきであるから、予見可能であったとしても履行不能時の価格を通常損害として賠償請求ができるとするのが一貫的だと潮見は主張する。

債権者の賠償額減額事由として、債権者に過失があった場合の418条の過失相殺、また損害と同時に利益も受けた場合の損益相殺がある。

金銭債務の不履行には、履行不能が存在しないこと、また不可抗力を含め一切の免責がないこと、損害の発生に因果関係の証明が不要であることがあげられる。

債務には給付義務のほかに付随義務として誠実行動義務、債権者の保有する生命・身体・健康・所有権などの利益(完全性利益)の保護義務、目的達成のために必要な措置を講じる義務(登記移転協力義務、複雑な機械の操作説明義務など)がある。

生命または身体に対する損害については、安全配慮義務違反(債務の付随義務)と不法行為のどちらでも損害賠償請求が可能だが、加害者の過失/不履行の帰責事由立証責任は債務不履行の場合債務者が、不法行為の場合被害者が負うため債務不履行のほうが容易(ただし安全配慮義務は手段債務)。ただし親族の慰謝料請求権は不法行為でしか認められない。改正後の消滅時効はどちらも「知ってから5年」「権利が行使できる時から20年」になった(ただし債務不履行の5年/20年は生命身体の侵害の特例で、通常は権利行使可能から10年)。

並列プログラミング

Makefileを書いてmakeした上で、富士通のバッチジョブ管理システムに対してbashファイルとして書かれたジョブを登録することでリソースグループや実行時間制限などを指定する仕組みだった。Makefileを見る限りIntelMPIラッパーを通してmpiicc、Intelコンパイラを使っているようだ。

法医学

イギリス連邦諸国はコロナー制度があることが多いが、スコットランド大陸法系であり存在していない。

コロナー制度では司法官たるCoronerが死因を決定するが、Medical examiner制度では法医学者が決定する。

今回は制度の歴史を辿る。

紀元前のアレクサンドリアでは既に解剖学が発達していた。またローマではC. Caesarの検視が行われたとの記録もある。14世紀初めに北イタリアで初の法医解剖が行われたとされる。また神聖ローマ帝国のカロリナ刑事法典では剖検を含めた医師の助言の必要性が示されており、刑事司法への関与中心に発達してきた。警察・検察が法医学的調査を研究所に委託する形である。現在では北欧中心に発展している。

大陸系の警察は明らかな自然死以外はすべて研究所に送る(日本では解剖の要否も警察が判断してしまう)。

英米系の制度は発展が遅く、労働関連死の増えた産業革命期に復権し、医師が連続殺人を行っていたShipman事件を契機に改正が行われた。

独自の発展を遂げた豪ヴィクトリア州では全死体ベースの解剖率は7.6%。身元不明、精神病院での監護、刑務所での拘禁中の死は必ず検証の対象となる。

アメリカのMedical Examiner制度ではMEが刑事捜査から独立しつつ連携して調査を行う。コロナー制度も人口割合で4割ほどの地域で地方を中心に残っている。

日本では警察が関連する死亡(刑事施設内死亡、警察による交通事故など)は検察が検視することになっている。

新法(調査法)解剖によって、警察の検視・検案で事件性なしとみなされても大学の法医学教室で解剖できるようになった。承諾解剖はほとんど新法に置き換わったという。

ネットワーク論

前回の補足としてCSMA/CDの衝突検知は電圧変化によって行っている。検知するとジャム信号を送ってそれを伝える。全二重通信が主流となった今では多くない。無線LANではCSMA/CA(Collision Avoidance, 通信開始前にランダム時間待つ)が使用されている。

インターネット上で通信を行う上での統一的なルールがInternet Protocol=L3(ネットワーク層)のプロトコルIPアドレスは世界で一意。130.69.251.128/25の25とはネットワーク部の長さであり、先頭から25個ビットが立ったサブネットマスク(11111111 11111111 11111111 10000000 = 255.255.255.128)であらわされる。130.69.251.128から255が同一ネットワークとして解釈される。うちネットワークアドレス130.69.251.128(ホスト部がすべて0)とブロードキャストアドレス130.69.251.255(ホスト部がすべて1)は使用できない。

サブネットマスクはAND演算の範囲を示すものである。すなわち203.178.142.193/27と203.178.142.225/27が同一ネットワークか判定する場合、それぞれのIPアドレスを2進数に変換してサブネットマスクとの論理積を取ったもの=所属するネットワークアドレスが同じかどうかで判断する(直感的には32bit中先頭27bitが共通しているかによって判断する。省略のため24bit分までは共通だと分かったとして、193は11000001、225は11100001であり、残りの先頭3bitが一致するかを見ると一致していない)。今回の場合同一ネットワークにはないため、宛先のIPアドレスが示されていてもMACアドレスARPによって知ることはできない。これが/26であった場合は11が共通しているため同一ネットワーク上にあり、送り先のMACアドレスを返してもらうことができる。

サブネットを分割することで、分割されたネットワークの内部宛ての通信は外部に出なくなり、セグメントごとのポリシーも設定できる。サブネットの分割はどこでもできるわけではなく、/(32-k)においてn*(2^k)のところでしかできない。

IPv6ではネットワーク部64bit、ホスト部64bit固定であり、ネットワーク部の最後のnibble(:で囲まれた4桁)を変えることで分割することがCisco Learning Networkでは推奨されている。すなわち2001:200:1000::/48というネットワークが利用可能な場合、2001:200:1000:0000から2001:200:1000:ffffが含まれる。そこで2001:200:1000:1を教室A用に、2001:200:1000:2を教室B用に、と振っていくと、ホスト部は64bitあるので、接続するホスト数を考えずとも自明に十分であるし、サブネットも2^16あるので通常は十分な内部ネットワーク分割を確保できる。

L2機器はリピータ・スイッチ・ハブなどと呼ばれる。L3スイッチとは、違うネットワークをつなぐもの=ルータのことであるが、なぜL2のはずのスイッチという名を冠しているのか?昔ルータはルーティングテーブルをCPUが処理していたところ、高速なハードウェア実装が出てきたときに「旧来のルータとは違う、新しいもの」という印象を与えるためのマーケティングとして名前が生み出されたのが理由。

ルータは宛先を見てどこに送るか決めるが、通信の秘密に反しているのではないか?という考えが生じるかもしれない。しかし日本法では、ルータの性質からして通信のために必要であり、宛先しか見ないことから正当業務行為だと解釈される。なお通信の秘密は全世界的に重要視されているわけではない。

 

10月第1週の振り返り

10月第1週(9/30-10/6)

フランス法文献講読

今週は初週であり学んだことはない。

債権総論

債権の効力には「債務者に対して給付を請求する権能(請求力)」・「給付を保持する―保持しても不当利得にならない―権能(給付保持力)」・「給付がない場合に訴訟を提起し給付を求める権能(訴求力)」・「判決後に強制執行を通して給付を受ける権能(強制力)」がある。付随的に損害賠償請求権追完請求権債権侵害からの保護もある。契約から生じた債権では解除権がある。

種類債権とは一定の種類に属するものを一定量引き渡すことを目的とする債権で、各々の個性を問題としないものである。ただし同種の品のうちで中等の品質であることとされている。種類債権は特定ののちは特定物債権と同等に扱われるとされるが、潮見説では567条を反対解釈して追完請求は妨げられず、引き渡し前に滅失した場合は再調達を要求できるとする。

金銭債権は、特定の種類の通貨の給付を目的としていない場合(1万円札で、あるいは日本円で、などの指定がない場合)金額債権と呼ばれ、通貨の種類選択は債務者の自由であるということは初めて知った。

徳義上の支払い、消滅時効となった債務、不法原因給付、破産により免責された債務などの自然債務は訴求力を欠く。

履行の強制方法としては直接強制(与える債務)、代替執行(為す債務)、間接強制(代替できない作為義務などに対し、履行しないことにペナルティを課すことで履行を促す)がある。

また履行の強制は履行が不能である場合には認められない。不能の類型には物理的に不可能である場合、履行が法令により禁止されている場合(法律的不能)、履行に要する費用が債権者の利益に比して過大なものである場合がある。

ただし禁制品の取引は法律的不能以前に90条の公序良俗違反により契約が無効となるために履行を拒絶できる。法律的不能が生じるのは契約締結後の価値観や情勢の変化(禁輸国指定など)の場合である。

選択債権では選択権者の過失で一方が滅失した場合には他方を選択できるし、双方とも引き渡しを拒むことはできない。例え選択権者でない当事者の過失によって滅失したとしても事情は変わらず、ただ滅失したものについての不法行為に基づく損害賠償請求が別件でできるだけである。選択権者の過失によらない理由で滅失した場合は、選択権者が債権者・債務者のどちらであっても滅失した方を選択して履行不能による解除とすることもできるし、そうでない方を選んで引き渡すこともできる。

債務不履行には本旨不履行(履行遅滞および不完全履行)と履行不能がある。債務不履行の要件は「債務の本旨不履行・履行不能」+「損害」+「因果関係」である。改正民法では帰責事由がないときは免責であり、帰責事由は不履行を構成する積極要件ではなくなった(実務上はさほど変わらないとされる)。

履行補助者(運送業者など)の過失を、債務者の過失と同視できる限度で帰責事由と認めるのが通説、債権者が履行代行者の使用を許容した場合は選任監督に過失がなければ免責とする学説も存在。三者の過失リスクをどちらが引き受けていたかを契約の解釈によって導出して判断するというのが近時の学説。

債務の内容として結果債務と手段債務があり、診療は手段債務である。すなわち任務に適した手段を用いることが給付内容であって結果の実現を保証していない。適切な手段が用いられていれば債務不履行とはならない。

債務の履行に代わる損害賠償請求(填補賠償請求)を行うためには、履行不能、確定的履行拒絶、契約解除権発生のいずれかが必要。契約を実際に解除する前にも損害賠償請求が認められるのは、履行を請求すると同時に、執行不能に備えた予備的代償請求を行うことができるから(民執法31条2項)。

並列プログラミング

並列parallelと並行concurrentは異なる。並列は同時に複数のものを実行するもので、並行は短時間のうちに処理内容を切り替えながら複数のものを一度に一つ、しかし進み具合は均等になるよう実行するもの。

Flynnの分類では並列計算機は命令とデータ流についてそれぞれ二分され4種類存在する。同時に複数のデータを処理してくれなければ意味がないので、SIMD/MIMDについて扱う。ベクトルプロセッサは一つの命令で複数のデータを操作するのでSIMDである。MIMDはスーパーコンピュータのノードがそれぞれ別の命令(分けられたOS)で複数のデータを操作する状態が該当する。

並列計算機はメモリの形式による分類も存在し、通信網を通して単一の共有メモリにアクセスする共有メモリ(Uniform Memory Access)型、各処理単位に分散して共有メモリを持たせ、足りない領域・手持ちにない情報は通信網を通してアクセスする非対称メモリ型(Non-UMA)、完全に各処理単位でメモリが独立している分散メモリ型(メッセージパッシング)に分けられる。

FX10の場合、ノード内はUMAだがノード間は独立している。Reedbush-Uではプロセッサに直結しているメモリと、IntelのQuickPath Interconnectを通じてアクセスできる他プロセッサのメモリが利用できるのでNUMAである。

並列プログラミングの手法としてはスレッド自体の挙動を制御するマルチスレッド(Pthreadsなど)、データ並列(OpenMP)、タスク並列、メッセージ通信(MPI)がある。複数ノードにわたる並列化はデータ並列とメッセージ通信が利用可能である。

データ並列は行列-行列積で左の行列の各行(データ)をそれぞれ別のプロセッサが保持して処理するといった例が挙げられる。タスク並列はプログラム内の処理の依存関係を把握して、依存関係ごとに分けた各段階で先に並列実行しておくもので、シチューを作るために野菜を切ることと水を沸騰させることのどちらも終わっていなければ煮込み始めることができないという依存関係において野菜のカットと鍋の加熱を同時にしておくといった例が挙げられる。

メモリを独立に持つのがプロセスであり、共有するのがスレッドである。OpenMPでマルチスレッド処理を行いつつ、ノード間をMPIでマルチプロセス処理をさせることも可能である。MPIは明示的に通信が必要な分散メモリ型計算機では必須である。MPIは共有メモリ上でもプロセス間通信ができる。

実際に発行される命令は各プロセスで異なるため複数種類になるが、人間が書くプログラムとしては単一なのでSIMD的な発想となる(Single Program Multiple Data)。

並列化効率に影響を及ぼす要因はいくつかあるが、多くの台数を用いた場合には各プロセッサのキャッシュに載りきるほどデータが小さく分割されることがある。この時は台数に対して線形的な性能向上を超えた(super linear)効率化が生じることがある。一方で全ての処理が並列化可能なわけではなく、並列化できる割合をαとしたとき十分に大きい台数で処理したとしても並列化できない部分は1台で処理するのと変わらないため全体の処理速度は1/(1-α)倍にしかならないというアムダールの法則が知られている。

Byte/FLOP値はプログラム中の1演算中にメモリアクセスが平均でどれほどあるか、またはメモリがプロセッサの一演算中にどれほどのデータを供給できるかを指し、メモリアクセスは演算よりはるかに遅いので後者は通常0.1以下となる。

データの分割は任意の次元で行える。例えば1次元分割では、上三角行列を処理する場合まとまりとして全行をk等分すると最初のプロセッサの処理すべきデータが多い一方で最後のプロセッサは極めて少ないという不均衡が生じるので、そのような場合にはサイクリック分割(ブロック幅w行ごとに分割して順繰りに割り当てるのを繰り返すラウンドロビン)のほうが効率化できる。

MPI_RecvとMPI_Sendはペアであり、RecvへのSendが完了するまでそのプロセスでは処理は一時停止する。

法医学

英米系と大陸系の死因究明制度は異なっており、英米系では解剖による究明を求める遺族がコロナー(coroner、法廷の役割を果たす)に訴え出て行政解剖を行うことができる。大陸系では検察が力を持っている。

法医学が発達しているとされる豪ヴィクトリア州では死亡に至った周辺環境も調査し、今後同様の死亡が避けられるよう勧告を行う。法曹たるコロナー自身が医学的知識を以て勧告に携わっている。

CTを死後に撮って脳内出血が見つかると日本では病死とみなしてしまいがちで、外傷や薬物によっても引き起こされるという法医学的知識の欠如による見逃しが起きる。

江戸時代では中国の洗冤録をもとに外見を観察するものであり、被害者に対する解剖は行われなかった。

その後日本に法医解剖が導入されるが、解剖能力に乏しいため犯罪が疑われる場合にのみ解剖が行われ、死因不明の遺体をすべて調査する原則が守られなかった。戦後になって日本でもアメリカに倣って医師自身をコロナーにする監察医制度が導入されるはずだったが、引き続き犯罪死かどうかを外観から警察が判断する仕組みが残ってしまい、大学は犯罪死体だけ、監察医は非犯罪(に見える)死体だけしか扱わず、かつ非犯罪死体の解剖は国費負担でないため簡易なもので済まされることがある。

その上司法解剖行政解剖で県警・県庁と管轄が分かれるうえ、国立大学法人化前は大学が文科省であり、他省庁に予算を付け替えることが許されていないために警察庁の予算を大学に交付することができず担当医師個人へのわずかな謝金が寄付という形で大学に回されているのみだった。

現在では死因・身元調査法で死因不明のものは警察判断で承諾なしに解剖ができるようになり、予算が多少割り当てられた。しかし全県で十分とはとても言えない。

風呂場での死亡が好例であるが、解剖による死因究明が行われないためある県ではほとんど溺死扱い、別の県ではほとんど心不全扱いとなり、しかもそれが正しいか分からないため風呂場での死亡対策に活かせない。ガス湯沸かし器事故も解剖が行われなかったため当初心不全とされた。

ネットワーク論

Ethernetデータリンク層(OSI L2)のプロトコル―どのように0と1の信号を送るのか。0と1のパターンによって意味を決めるのがEthernet。48bit/6byte/6Octetsの宛先・発信元MACアドレスや、SFD(開始フレームデリミタ)、データ長に関する情報、エラー検出シーケンスがデータ以外についてくる。最大で1.5kiBを一度に運べる。何に関するパケットを送っているのかという情報も送る(プロトコルタイプフィールド)。0800であればIPv4

10base-T(OSI L1 物理層)における符号化はマンチェスター符号である。100base-TXの4B/5Bとは4bitの後に必ず"1"であるビットを付加することで干渉対策をしている。

NICに対してEthernetはどのように制御を行うのか。NICは固有のMACアドレス(L2識別子、GUID)を有しており、複数のIPアドレスもついている(複数のL3プロトコル―IP以外も―を同一リンク上で利用するため)。

MACアドレスのそれぞれは256通りの値をとる=2^8=8bit=1byteで、6個6byteからなる。アドレスの前半はベンダーによって固有のため、不正な通信の発信元にいかなるNICが搭載されているかを確認するために使用できる。

IPv4と違って枯渇しないのは単に32bitと48bitの違いだけではない。IPv4は割り当てが非常に放漫で、256個あるところに10個しか使っていないことがよくあるが、NICは製造時に設定されるので緻密に割り当てられていることも理由である。

Carrier Sense Multiple Access / Collision Detectionが実装容易であることからEthernetの基本方式とされる。

接続形態は3種。

  • Point-to-Point(2ノードしかない):相手は一人なので全員(=相手1人)に送信すればよく、MACアドレスは必要ない。
  • Broadcast Multiple Access(バス型):全員が同一リンクに接続し、フレームをブロードキャストする。受け取る相手を指定するためにMACアドレスが必要。
  • Non-Broadcast Multiple Access(コネクション型):相手との論理的接続を確立して直接送る。現在あまり使われない。

このブロードキャストする範囲がコリジョンドメインであり、帯域幅と送信データを共有する。

半二重通信は同一チャネルでタイミングを切り替えて送受信を行う。

リピータは接続されているすべてのポートに信号を送信し、ブリッジはポートとMACアドレスの対応を記憶し、そこに合致するMACアドレス宛のフレームは当該ポートにだけ送信することで無駄を減らす。基本的にはある程度フレームを蓄積して後で送る(Store and Forward)が、来た瞬間から送る(Cut-through)こともできる。ただしパケットロスが発生しやすい。

ARPでは全員に対して該当IPアドレスかどうか問い合わせて、該当するならMACアドレスが返ってくる。ARPにおいて宛先アドレスはff:ff:ff:ff:ff:ffという特殊なMACアドレスにして送る。

Ethernetは閉路がない前提で構築され、ルータ(L3)で区切られる。ルータはIPアドレスによって送り先のL2スイッチを選んで送信し、その中ではARPによってIPアドレスMACアドレスの対応が行われ当該ポートへ届く。L2スイッチを閉路が存在するよう接続してしまうとフレームがループしてしまい、「ブロードキャストストーム」によって帯域が占有されてしまう。IPと異なりTTLが存在しないために起こる現象である。

これに対処するためにSpanning Tree Protocolがある。ストームが発生して閉路を検出したとき、木構造に含めないことで回避する。どのスイッチ間を優先し、どのスイッチ間を無視するのかは事前に設定されたPriorityと帯域幅によって自動的に計算されるコストによって決定する。障害発生時に無視されていたバックアップ回線を自動的に戻すことは想定されていない。

 

なが月・60日目

60日目

いよいよ長月の晦日となり、授業が始まったことで毎日連続して自習時間を割くことが難しくなった。そのためなが月は本日をもって終了し、以後はフランス語文献講読、並列プログラミング、債権総論(これは必修ゆえ不本意だが)を週末に記録していくこととしたい。