• 検索結果がありません。

A Development of a System for Program Transformation(The first report: A System for the Transformation of Problem Analysis Diagram)Seiji HORIUCHI Taisuke HORIUCHI

N/A
N/A
Protected

Academic year: 2021

シェア "A Development of a System for Program Transformation(The first report: A System for the Transformation of Problem Analysis Diagram)Seiji HORIUCHI Taisuke HORIUCHI"

Copied!
10
0
0

読み込み中.... (全文を見る)

全文

(1)

プ ロ グ ラ ミン グ言 語 変 換 シ ス テ ム の 開 発

第 1報 PAD トランス レー タの開発 堀内征治 堀内泰輔

A Development of a System for Program Transformation

( T h e   f i r s t   r e p o r t :   A   S y s t e m   f o r   t h e   T r a n s f o r m a t i o n   o f   P r o b l e m   A n a l y s i s   D i a g r a m )

Seiji HORIUCHI Taisuke HORIUCHI

In the developmentofsoftware, tllereare many prOgraming langllageS. In recentyears,structuredprograminglanguages‑ C,structured Basic andsoon‑

havebeen used forprograming instead ofearlier languages‑Fortran,Basic, as・

semblylanguageetc.Therefore,itisimportanttomakeatransformation between these two programing languages. Butitisnotsoeasytomakesoftwareforthe transformation.

In thispaper,an intermediatelanguage issuggestedinordertomakeiteasy todevelopthetransformation software.Onthebasisofdesigningtheintermediate language,atransformationsystem forPAD hasbeendeveloped.

Thistransformationsystem hastwoessentialsubsystems.Inthe丘rstsubsystem

,

PAD drawnontheCRT screenistransformedintoasourceprogram oftheinterme・

diatelanguage.And then in thesecond one,thesourceprogram istransformed intothetargetlanguage,suchasC,Basic,andsoon.

1

.

は じ め に

‑‑ ドウェア技術の驚異的な発展に追随するかたちで, ソフ トウェアの面で も幾多のプロ グラミング言語の提案が行なわれ,最近では構造化 プログラ ミング指向の言語 (た とえ はC 言語や構造化BASI

C)

が注 目され 着実にユーザ数を増加 させている.

一方, これまでに蓄積 したプログラム群が足かせ となって,言語の切 り替えが困難なユー ザが多いことも事実である. このような事情か ら最近では特定言語間のソースレベルでの変 換 ユーティ リティが市販 され るようになった. しか し, このようなユーティ リテ ィを開発す る場合,変換前後の両言語間の差異のみに注目す るため,ほかの

2

言語間の変換 ユーテ ィリ テ ィを再開発す る際には,それ までに開発 したプログラムをほ とん ど活かす ことができず, 結果的に多大の労力を強いられることになるだろ う.

* 横桟工学科 助教授

* * 機械工学科 講師

原稿受付 平成元年

9

30

(2)

堀内征治 ・堀内泰輔

本研究は, これ らの状況に鑑み,プ ログラミソグ言語間の汎用的な変換 システムの開発を 目標 としている・つ ま り,文法や差異をデータベース として串述するだけで, プログラムの 変更は一切不要に した ものである.この目的を実現するためのひ とつの方法 として中間言語 を用いることが考えられ る.つ ま り,変換す る言語をいったん共通基盤 としての中間言語に 変換 し,次にその中間言語をターゲッ ト言語に変換するとい う2 段階に分割化する方法であ

る.

本報では第一段階 として,中間言語 のアイデアを もとに した

PAD

トランス レータについ て述べる

・PAI

)は, 7°‑チャー トに代わ声,構造化 プログラ ミング用 のツールとして注 目されているものであ り,今回開発 したのは,画面上に描いた

PAD

を自動的に中間言語に 変換す るものである・. さらに,得 られた中間言語テキス Iを . C 言語などの実際 のプログラ ミ ング言語に変換するツール も開発 した.また, このシステムが特に情報処理教育に有用であ ることにも言及す る.

2.

中間言語の設計

2‑1

中間言語について

中間言語の考え方は,例えは; コンパイラを作成するときに用い られ る.図

1

UNIX

システムにおける

C

言語 コンパイラの処理過程を示す. この場合, アセンブ リ言語が中間言 語 として位置づけ られ,他の言語 ( 例 えば

FORTRAN77)

か らの同様な中間言語出力 とア センブ リ言語 レベルで結合 され,最終的に機械語か らなる実行可能プログラムに変換 される.

この仕組みは直接機械語に翻訳す るのに比べ手間がかか るが, コンパイラの開発効率,汎用 性か らみて有用 な手法 といえる.

本稿で提案す る中間言語は, これを高級言語間変換のレベルにまで拡張 しよ うとす るもの で,図 弓には従来の中間言語を用 いずに直接変換す る方法 と本方法を対比 して示 した・本方 法を

3

つ以上の言語間相互変換に適用すると大 きなメ リッ トを生ず る.つ ま り,特定言語を 中間言語に変換す るためのツール とその逆方向の変換 ツールを一度開発 しておけば,別の言 語への ( あるいは,特定言語か らの)変換が必要になった場合, この新たな言語に関する同 様 な 2 つのツールを開発す るだけでよ く,あ とはこ うしてできた 4 つのツールを組み合わせ ることで 目的が達成できる.これを従来の方法で行なお うとす ると,双方 の特定言語を意識 しつつ ツール開発を行な う必要があ り, また他の言語 との変換が必要になった ときにせっか く開発 したツールがほ とんど利用できないこと. になる. この点中間言語を用いれば, 1度開 発 した ツールは何度 も再利用できる点で優れている・

2‑2

中間言語の設計

まえがきで述べたように, プログラム変換の必要性は従来の比較的低機能な言語 ( 以後, 低言語 と呼ぶ)か ら,,最近注 目されている 構造化 プログラ ミング を意識 した 高機能な言語 ( 以後,高言語 と呼ぶ)‑の変換 (これを,低高変換 と呼ぶ ことにする)が主であ り,例え はC 言語か ら BASI C といった逆方向の変換 ( 高低変換)はあま りニーズがない とみてよい.

ただ,高言語間の相互変換は必要であろ う.

このような実状を考慮 して,中間言語のレベルを高言語,低言語のどちらに置 くかを検討

(3)

1 UNIX(4.2/3)

におけ る

C

ソ′ tイルの処理過程

( a ) 直接変換 O ) ) 中間言語を仲介とした変換

図 2 2 つのプt ]グラム変換方法

(4)

4

堀内征治 ・堀内泰輔

す る必要がある.一般に低高変換は,高言語の低言語以上 の機能を犠牲にすれば容易である.

逆 に高低変換は展開を要するため極めて困難 といえる.低言語間,高言語間の変換は,高低 変換に比べれば容易である. この考察か ら,中間言語を低言語にすると,高言語間の変換を す る際に高低変換が必要にな り不利になる.一方中間言語を高言語にすれば, この問題は生

じない. このことか ら,中間言語の機能を豊富にすることが低高変換においては重要 となる.

前述のように,通常は高低変換の必要性はあま りないが,情報処理教育の面か ら見ると, これ も必要になる.つ ま り,構造化言語を教育 したいが,現実にはそのための資源がな く, BASI C 等の非構造化言語で 教育せざるを得ない とき に,構造化 フローチャー トと して の PAD や構造的な疑似言語を援用する場合, これ ら高言語か ら BASI C 等の低言語への高低 変換 ツールが必要 となる.以上のことか ら, このような高低変換においては,中間言語のレ ベルを高言語,低言語のどちらに匿いても差異はない といえる.

l

中間言語 の文法

く 7 ● ロ ケ ■

ラム〉::

= く ス テ I t J 州〉く く ス テ I Hyト 〉 )

く ス テ ー 日ソト 〉・ . ・ . ;く代入文 〉 lく 入 力文 〉 lく出力文 〉r く d i l n 文 〉 tく制御文 〉 く代入文 〉:: ;く変数〉≡く式 〉ls y a p く 変 数〉.く 変数 〉

く入力文 〉 : : … i n く変数〉( く.変 数〉I

く出力文 〉 : : = o u t く変数 〉 rく 式 〉 1 , く 変 数 〉I く 式 〉I

く d i m 文 〉 : : = d i m く変数〉( く整定 数 〉 日,く変数〉( く整定 数〉)I く制御文 〉 : : ≡ く i f 7 °ロ1 ク 〉l く y h i l e 7 ●Dl ク 〉)く f o r 7 ■叫 ク 〉lく b r e a k 文〉

く i f 7 ' t l 1 ク 〉 . I : : i f く式 〉く ポーr fンr )( く ポー り州 〉 Ie n d i fJ

i f く式 〉

りン I 〉1 く ス

り ン ト 〉 Ie l s e くステーけ ン ト 〉 t く ス テーり ン ト 〉 Ie n d i f く y h i l e 7 ■ ロ 1 ク 〉 : : ; d oy h i l e く式〉 く ス テ ー t fント 〉t く ス テー 日 ソ t ) I1 . o o p

く f o r 7 ° t ] 7 ク 〉 : : ; d of o r く整変数〉 ≡く式).く 式〉

J

yト 〉( く ス テ ー t /ンr ) Il o o p く b r e a k 文 〉 : : = b r e a k

く変数 〉:: =く識別子 〉l く識別子〉く型文字 〉1 く 配列変数〉

く識別子〉:: ;く英字〉( く英字 〉

く英字〉:: = alblcl d

く数字 〉 : : = 112131 4

j

lklll nl n

l

ol pl qlrlsltlu

l

v l yf xl ylz 0

く型文字 〉:: = % l

H #lS

く配列変 数〉:: =く 識別子〉( く 式 〉 ) Lく 識別子〉く 型文字 〉( く 式〉) く整変数〉:: ;く識別子 〉 l く識別子〉篤

く式〉:: ;く 単純 式 〉I く単純式〉

く2

項 演算子 1 〉く 単純式 〉

̀ く単純式〉:: =く符号〉く 項 〉 lく符号〉く 項 〉 く2 項 演算子 2 〉く 項〉

く 符号〉:: = 1 十トI く2 項演算子 1〉 ; ; = く

く2 項演算子 2 〉 : : ≡ + 〉

l

く 〉1く =l く ;

‑J o r

く項 〉:: ≡く因子

lく因子〉く乗除演算子〉

く乗除演算子

〉::

; *[ /

l

m o dI a n d

く因子〉:. I :く変数 〉 lく関数名〉( く 式 〉 I . く式〉 1 日 ( く 式 〉 )l r L O t く因子 〉 lく定数〉

く関数 名 〉 : : ; a b sls q rls i nIc o sHx p

く定数 〉:: ;く数値定数 〉 lく文字定数 〉 く 数値定数〉:: ;く整定数 〉 lく実定数〉

く整定数〉:: =く符号〉く数字列〉

く数字列 〉:: =く数字〉I く数字〉〉

く実定数〉:: ;く符号〉く数字列〉 .く数字列〉′

く 文字定数 〉:: ;く文字列 〉■

く文字 列 〉:: =く く英字 〉 lく数字 〉l く 特殊記 号 〉 )

く特殊 記号 〉 : ; [ (J )J ' :l、H ltl ‑I @llH I ]l り ;l*[ +Jくl

(5)

2 ‑3 PAD トランスレータにおける中間言語の設計

今回の開発では ,PAD ( Pr obl e m Anal ys i sDi a gr am :1 9 7 0 年代に日立製作所で開発 さ れた構造化図法)か ら,低言語 としての BASI C や高言語である C 言語や BASI C/ 9 8 ( 構造 化 BASI C の 1 つ)へのプログラム変換を対象 とした・ これは現実に教育面で上記 のニーズ が高いためである. PAD がきちん とかければ構造化プログラ ミングを一応習得 した ことに なるし,任意のプT ]グラ ミシグ言語での記述‑の移行 もスムーズである. よって ,PAD は 形憩 こそ異なるにせ よ,一種のプログラミング言語 として位置づけ られ よう・

このように,今回の PAD トラソスレーク開発には,高低,低高の丙変換を伴 うこと,お よび対象を情報処理教育用 とした ことを考慮した.そのため中間言語のレベル としては,初 歩的なアル ゴリズム教育に最低限必要な制御構造 とステー トメン トを扱 う程度 とし,低言語 に近い ものに設定 した. この中間言語の仕様を表

1

に示す・

3.

システム概要

3

に PAD トランス レータの概要を示す・ システム全体は,メニュープログラム ,PAD ェディタ , 3 本の中間言語変換 プログラムの 5 本のプログラムか らなる・

三三三」

iiZSiZ!

転 」i i i i i i ̲̲̲ i i i i i i i i i i i i i

iii ̲̲̲

堕 」

二二 に

二. ̲

由 匡 垂 ∃

空コ

図 3 PAD トラソスレークシステム枕要図

pAD エディタは PAD チャー トを画面上に作成す るためのソフ トウェアであ る・入力装 置 としてはマウスを積極的に活用 し,キーボー ドの使用は PAD シンボル内のステー トメ

+/

トや ファイル名入力など,最小限に抑えた.さらに,マニュアルな しで も操作で きるよ う各 pAD シンボルや諸機能をアイコン化 し, シンボルの配置 ・結線か ら中間言語への変換に至 るまでを簡単な操作で行えるよう配慮 した.なお ,PAD エディタの出力は

2

つあ り ,PAD 図の再編集に必要なイメージファイル と,中間言語に変換 された ソースファイルである・

中間言語か ら3 つの特定言語への変換は,それぞれの中間言語変換 プログラムに よ り行 な

われる.制御構造の弱い BASI C への変換は高低変換,機能の多い C 言語 と BASI C/ 9 8 へ

の変換は低高変換 となる.

(6)

6

堀内征治 ・堀内春輔

なお, これ ら一連 の操作を簡単化す るために,全体を統括するメニュープログラム も作成 した. また, ターゲ ッ トマ シンは

FMR‑50

( 富士通製)であ り, ソブ トの開発には

C

言 語

(LatticeC)

を用 いた.

4.

PAD エデ ィタ

メニュープログテムか ら PAD ェデ ィタに制御が移 ると,図 4 に示す初期画面が現れる.

これは,前述 のように,新 たに PAD 図を作成す る場合 と,すでに保存 されているものの再 編集を可能 とす るよ うに設計 した もので,次 の

3

群 の機鹿をそれぞれ,画面左端にアイコン 化 した.

(1)

PAD 作図の長めの各種 シンボル

ックスの配置 と結線 のための機能 シンボル

(2)

画面のイメージファイルの保存お よび呼び出 しのための機能

(3)

PAD エデ ィタか らメニュープ ログラム‑の移動用機能

これ らの中で ,( 1 ) の作図に関するシンボルは図 5 に示す 6 種類に限定 した.先 に述べたよ う に ,PAD トランス レータを情報処理教育用 の入門に有用 とす るための配慮か ら,必要度中 限のものに放 ったためであ る.

1989/09/29 15:26:17

f l 通常シンボル

l 入力シンボル

出力シンボル

l l 反榎シンボル

(. 選択シンボル

図 4 PAD ェディタの初期画面 ( 部分) 図 5 PAD シソポル一覧表

PAD チャー トの描画は, シンボル アイコンの選択 と配置,そ して シンボル内への記述項

日の入力を繰 り返 した後∴各 シンボルを結合する とい う手順 を とる.原則 としてマウスの左

ボタンは選択,右 ボタンはキャンセル とした. また,各 シンボル結合の手続 きでは,不適切

な シンボル同士が結 ばれない ようチェックも施 した.なお,画面は開始時 の状態 に対 して上

(7)

図 6 PAD の例

1989/09/29 15:22:22

[:

⊂⊃⊂=〕[コ 】1

l >

▼ w a p x( i )

mX(50) l

l X( i + 1 )

=1

r 1‑Ol

50 x(i(I)(+i) /

I l e L "'

1

儒 L x i k i iLJ / 酢 → ‑ = > i 号,

英小 図 7 PAD コ エ ディタの使用例

下左右にス クロールで き,可視画面の

9

倍 までの作図が可能である.図

6

に示す PAD の簡 単な例を ,PAD エデ ィタに展開 した ものが図

7

である.

前述 のよ うに ,PAD ェデ ィタの出力対象はイメージファイル と中間言語 ファイルの

2

つ であ り

,SAVE

アイコンを ク リック後, システ ムが発生す るメッセージに答え る形で選択 で きる・

・r

トランス レー ト」を指定す る と,後述す 亭ような形で中間言語 ファイルが カレン ト

ドライブに保存 され る.・ この ときのファイル名拡張子は 「

.

PCD 」 とした.

中間言語への トランス レー トのアル ゴリズムを図 8 に示す.

図 8 中間言語への トラソス・ レ‑′ トのアルゴリズム

(8)

8

堀内征治 ・堀内泰庫

PAD チャー トにおける開始 シンボルの検索は,作図されたパターンを解析す ることに よ って行われ, これに よ りツ リーウォー クの開始点が定 まる.開始点が確定 され ると,そのシ ンボルの種類 に応 じたキー ワー ドと内容,次の シンボルの番号を与え,以下 このループを繰 り返す. シンボルの種類が選択 シンボルや反復 シンボルの ときは,そのシンボルの右側 のシ ンボルに制御が移 る. この ときの右側 のシンボルを子 シンボル,元 のものを親 シンボル と称 した. これ らの制御 ブ ロックが閉 じる ときには,ループの終わ りを示すキー ワー ド (

"loop"

"endif

" ) が与 え られ,再び,親 シンボルの下に制御が移 ることになる. このよ うな検索 を しなが ら,個 々の PAD シンボルに対 し,一対一の中間言語が生成 され る.図 9 に図 7 の ト ランス レー ト結果を示す.

なお ,PAD ェデ ィタか らメニュープログラムへの移行は ,END アイ コンの選択に よ り, 自動的に行われ る.

dimx(50) dofori=0.50 ifx(

i )

(i+1)

swapI(i).I(i+1)

k=i

doWhilek〉1 k=k‑1

ifx(k)くx(k+I)

swapx(k).x(k+1)

else break endif loop endif loop

100D川 X(50) 110FORI=OTO50

120 IFX

(

I)くX(Ⅰり)THEN 130 SYAPA(I).X(I+1) 140 Ⅹ=1

150 DOYHILEK1 160 E=K‑1

170 IFX()くX(K+I)THEN 180 SYAPA(I(),X(K+1) 190 ELSE

200 EXITFOR 210 ENDlF 220 LOOP 230 ENDIF 240NEXTI

図9 中間言語‑の変換例 図 1 0 BASI C/ 9 8 ‑の変換例

5.

高級言語への トランス レー ト

今回開発 した PAD トランス レータでは,前述の よ うに BASI C ( N8 8 BASI C) ,構造 化 BASI C ( BASI C/ 9 8 ) お よび C 言語‑の変換を可能に した. これ らの選択は前節同様 メニュ ープログラムでなされ,それぞれ の変換 ソフ トウェアに制御が移 る.

3

節で述べた ように, トランスレータにおける中間言語はかな り BASI C に近い構成 と なった. もちろん ,PAD 自体が構造化手法を意識 した表現形態 であるため,中間言語は結 果的には構造化 BASI C の性格に似た もの となっている.したが って,中間言語か ら BASI C/

9 8 への変換はほぼ一対一の対応で処理 できる.すなわ ち,読み込 んだ中間言語 の リス トは先

ず キー ワー ド ( 特定言語 の予約語に相 当す るもの) とそれ以外 の情報 とに分解 され る.ヰ ‑

ワー ドを判定す るとターゲッ ト言語である BASI C/ 9 8 の予約語への変換が行おk,その際

に前段 で分解 された種 々の有意情報が当該位置に埋め込 まれ ることになる.図

10

に,変換 さ

れ た BASI C/ 9 8 のプ ログラムを示す. これか らも明 らかな ように, プログラムの美化を考

慮 してのオー トインデ ン ト機能 も付加 した.

(9)

N88BASIC

のような非枯造化

BASIC

への展開は, ことに判定の制御構造に配慮が必要 である.今回は条件節 として中間言語での条件を論理否定 した表現を用い, 自動的に適当な 位置にラベルを配 して,疑似的に構造化を図って対処 した.変換例は図1 1のとお りである・

10

0 DIN

X

(

5 0) 1

10 FOR I王O TO50

12

0 IF NOT(I(I) く X(I

+

I) )

T

ElEⅣlEL1

13 0

SYAP X(

I ) ,

X

(

I

+1 ) 140

Ⅹ=1

15 0

YHILEKく〉1

16 0

X=Xl1

170

1F NOT

(

X

( K )

X

(

K

+1

)) TIIEⅣl

E L 2

180

SYAP X

( K

)

.

X

(

+1 ) 190

GOTO

I E

NIF2

200

1EL2

21 0

GOTO +LOUT1

22 0

1EⅣ

I F2 23 0

YEND

24 0

1LOUT1

25 0

GOTO +EN

I F1 26 0

I

E L1

27

0 書ENIFl

28 0

V LLJ ̲▲HT

11 N88BASIC

への変換例

staticfloatxl51】;

staticfloati;

staticfloatk;

voidmain() I

floatpad̲Gyp;

for(i;0;iく;50;l

if(xl(int)i](xl(int)i+1])I pad̲syp;xl(int)i】;

x(tnt)i=xl(int)i+l];

xl(int)i+1=pad̲Gyp;

k;i:

yhHe(k!:

1 日

k=k‑1;

if(xl(ht)k】くxl(int)k+1】)I pad̲syp=xl(iTLt)k];

xl(lTLt)k]

;

x

l

(int)i+1】;

x【(int)k+1=pad‑syp;

Ielse.I break;

I l I

I

12 C

言語への変換例

高言語であるC への変換を試みた ものが図1

2

である.

BASIC

系 の言語か らの変換で最 も 重要な部分のひ とつは変数の型宣言に関わ る部分であ り,上述のキーワー ドの判定の際に, 構文解析 して変数を ピックアップす る必要がある. しかるのち,上述のキーワー ドか ら予約 語部への変換がなされるように設計 した.また,この例にみ られ るように,中間言語で swap

と記述された命令を 3 つの代入文に変換す ることも必要である. このようなキーワー ドは数 は少ないが入門教育の折 りにも必要 となることか ら,本 システムではこれ らについて もサポ

ー トすることとした.

6.

結 び

本報では, プログラ ミング言語間の変換 の必要性を強調 し, この変換が,中間言語を媒介 とした汎用的な システムとして行われるべ きであることを提言 した.そ して,その第一段階 として ,PAD チャー トか ら 3 種煩の高級言語への トランスレータの開発を行い,その結果 について述べた.

構造化 プログラ ミングの教育においては ,PAD か らアプローチすることが大 きな効果を

もた らす ことはすでに報告 されているが, さらに,今回開発 した トランス レータを初心者の

入門教育に用いたことに よ り,構造的な言語の教育にきわめてスムースに移行できることが

(10)

10

堀内征治 ・堀内泰輔

明 らかになった. また,非構造的であるとされている従来か らの BASI C に変換す ることも 容易 とな り, あわせて,疑似構造化の啓蒙に も貢献で きた. さらに低言語か ら高言語の変換

の一例 として, C言語 の トランスレー トも実現で きた.

これ らの変換において設計 した中間言語が, このよ うな多言語 の トランス レー トを必要 と す るシステムに とって,実に有用であ ることも実証 された. しか し, さらに多 くの言語間の 変換を 目指 した り,あ るいは, 目的を教育用か ら実務用 に発展 させ ることを考えると, この 中間言語の設計は さらに絞密に行 うことが必要 となろ う.

PAD ェデ ィタについて も,当初 の 目的を達す ることはで きたが,ス クロールの高速化や アイコンの適切な位置配置な どについての改善 も必要 と思われ る. これ らの改良については 第

2

段階 としての言語間 トランスレー トの開発 の中で達成 していきたい.

おわ りに,本 システムの開発 の一部は,平成元年度機械工学科 の卒業研究 のテーマ として 与 えた ものであ り, とくに,情報研究室学生 岡本寛史君 の功掛 ま多大である. ここに深 く感 謝 の意を表す る.

参 考 文 献

(1)

舌J J l 康丁他 :プt ]グラム変換,共立出版

(1987) (2)

金敷準‑ :PAD入門,サイエンス社

(1988)

図 1 UNI X( 4 . 2 / 3 ) におけ る C コ ソ′ tイルの処理過程
図 6 PAD の例 1989/09/29 15: 22: 22 [ : コ ⊂⊃ ⊂=〕[ コ 】1 l > ▲ ▼ w a p x( i )mX(50)llX(i+1)=1

参照

関連したドキュメント

 さて,日本語として定着しつつある「ポスト真実」の原語は,英語の 'post- truth' である。この語が英語で市民権を得ることになったのは,2016年

従って、こ こでは「嬉 しい」と「 楽しい」の 間にも差が あると考え られる。こ のような差 は語を区別 するために 決しておざ

その詳細については各報文に譲るとして、何と言っても最大の成果は、植物質の自然・人工遺

強者と弱者として階級化されるジェンダーと民族問題について論じた。明治20年代の日本はアジア

断面が変化する個所には伸縮継目を設けるとともに、斜面部においては、継目部受け台とすべり止め

スライド5頁では

実際, クラス C の多様体については, ここでは 詳細には述べないが, 代数 reduction をはじめ類似のいくつかの方法を 組み合わせてその構造を組織的に研究することができる

Nonlinear systems of the form 1.1 arise in many applications such as the discrete models of steady-state equations of reaction–diffusion equations see 1–6, the discrete analogue of