/* ************************************** "braid.h" ブレイドに対する操作−インタフェイス部 ************************************** */ #include <stdio.h> #include "list.h" void create_list(List&,FILE*); // 生成元リストの作成 void create_list(List&); // 生成元リストの作成 void display_list(List&,FILE*); // 生成元リストの表示 void display_list(List&); // 生成元リストの表示 void display_canonical(Canonical&); // 標準形の表示 void display_canonical(Canonical&,FILE*); // 標準形の表示 void restore_canonical(Canonical&,List&); // 標準形を生成元の積に戻す void copy_list(List&,List&); // 生成元リストのコピー void product(List&,List&,List&); // ブレイドの積を計算 void product(Canonical&,Canonical&,Canonical&); // ブレイドの積を計算 void inverse(List&,List&); // 逆元の作成 void inverse(Canonical&,Canonical&); // 逆元の作成 void fundamental(List&); // 基本ブレイドの作成 void collect_delta(List&,Cell*); // 基本ブレイドを左に集める bool judge_same(List&,List&); // 同じ表現であるかどうかの判定 int equal_list(List&,Cell* []); // 同値類の列挙 int judge_braid(List&); // 順列,基本,冗長ブレイドの判定