目录
第1 章概述................................................................................ 1
1.1 离散数学问题的计算机求解.................................................... 1
1.2 离散数学问题的面向对象建模................................................. 3
1.3 离散数学问题求解软件的界面设计与实现................................ 7
1.4 本章小结............................................................................. 14
第2 章命题逻辑知识的建模与问题求解............................................. 15
2.1 需要求解的命题逻辑问题概述............................................... 15
2.2 命题逻辑问题求解的需求建模............................................... 16
2.2.1 用例分析与建模........................................................ 16
2.2.2 领域实体分析与建模................................................. 23
2.3 命题逻辑问题求解的概要设计............................................... 27
2.3.1 命题逻辑公式语法分析部分类的设计.......................... 28
2.3.2 命题逻辑公式真值计算部分类的设计.......................... 31
2.3.3 命题逻辑等值演算与范式部分类的设计....................... 34
2.3.4 命题逻辑推理论证判断部分类的设计.......................... 37
2.3.5 命题逻辑问题求解部分类概要设计小结....................... 39
2.4 命题逻辑问题求解的详细设计............................................... 41
2.4.1 类Formula 及其子类的详细设计................................. 41
2.4.2 类FormulaTruthTable 的详细设计............................. 43
2.4.3 类FormulaASTGraph 的详细设计................................ 45
2.4.4 范式类的详细设计..................................................... 46
2.4.5 类NormalFormulaCalculator 的详细设计.................. 48
2.4.6 类EquivCalculusChecker 的详细设计....................... 52
2.4.7 类ReasonArgumentChecker 的详细设计...................... 52
2.4.8 类FormulaBuilder 的详细设计.................................. 53
2.4.9 命题逻辑问题求解部分详细设计小结.......................... 57
2.5 命题逻辑问题求解的实现..................................................... 58
2.5.1 命题逻辑公式语法分析的实现........................................................ 58
2.5.2 命题逻辑公式真值计算问题求解的实现........................................... 67
2.5.3 命题逻辑公式范式计算问题求解的实现........................................... 73
2.5.4 命题逻辑等值演算正确性检查问题求解的实现................................. 88
2.5.5 命题逻辑推理论证正确性判断问题求解的实现................................. 91
2.6 命题逻辑问题建模与求解小结.............................................................. 96
第3 章集合关系函数知识的建模与问题求解.................................................... 98
3.1 集合关系函数问题求解的需求建模........................................................ 98
3.1.1 用例分析与建模........................................................................ 98
3.1.2 领域实体分析与建模................................................................100
3.2 集合关系函数问题求解的设计........................................................... 101
3.2.1 求解集合基本运算问题的类设计.................................................... 101
3.2.2 求解关系问题的类设计................................................................. 102
3.2.3 求解函数性质判断问题的类设计.................................................... 106
3.3 集合关系函数问题求解的实现........................................................... 107
3.3.1 集合基本运算问题求解的实现....................................................... 107
3.3.2 关系基本运算问题求解的实现....................................................... 110
3.3.3 关系性质判断问题求解的实现....................................................... 112
3.3.4 关系闭包计算问题求解的实现....................................................... 114
3.3.5 等价关系计算问题求解的实现....................................................... 117
3.3.6 偏序关系计算问题的求解.............................................................. 119
3.3.7 函数性质判断问题求解的实现....................................................... 125
3.4 集合关系函数问题建模与求解小结.................................................... 128
第4 章组合计数知识的建模与问题求解........................................................ 129
4.1 组合计数问题求解的需求建模......................................................... 129
4.1.1 离散数学中的组合计数问题概述.................................................... 129
4.1.2 用例分析与建模.............................................................. 131
4.1.3 领域实体分析与建模........................................................ 134
4.2 组合计数对象枚举的设计.............................................................. 138
4.2.1 字符串枚举相关类的设计.............................................................. 138
4.2.2 排列组合生成相关类的设计.......................................................... 140
4.2.3 基于整除性质的整数枚举相关类的设计.......................................... 142
4.2.4 不定方程非负数整数解枚举相关类的设计...................................... 143
4.3 组合计数对象枚举的实现........................................................... 144
4.3.1 字符串枚举的实现........................................................... 145
4.3.2 整数枚举的实现................................................................. 149
4.3.3 不定方程非负整数解枚举的实现.................................................... 151
4.3.4 排列组合生成算法展示的实现....................................................... 154
4.4 组合计数问题建模与求解小结.................................................... 158
第5 章图和树知识的建模与问题求解........................................................ 159
5.1 图和树问题求解的需求建模.......................................................... 159
5.1.1 用例分析与建模........................................................... 159
5.1.2 领域实体分析与建模...................................................... 164
5.2 图和树问题求解的设计............................................................. 166
5.2.1 展示图遍历算法的类设计.............................................................. 166
5.2.2 展示树遍历算法的类设计.............................................................. 170
5.2.3 展示带权图算法的类设计.............................................................. 170
5.2.4 展示哈夫曼树构造的类设计.......................................................... 174
5.3 图和树问题求解的实现............................................................... 177
5.3.1 图遍历算法展示的实现................................................................. 177
5.3.2 树遍历算法展示的实现................................................................. 182
5.3.3 带权图最短路径和最小生成树算法展示的实现................................ 186
5.3.4 哈夫曼树构造算法展示的实现....................................................... 193
5.4 图和树问题建模与求解小结.......................................................... 198
第6 章代数结构知识的建模与问题求解...................................................... 199
6.1 代数结构问题求解的需求建模........................................................ 199
6.1.1 用例分析与建模.............................................................. 199
6.1.2 领域实体分析与建模....................................................... 201
6.2 代数结构问题求解的设计.......................................................... 202
6.2.1 运算性质判断的类设计............................................................. 202
6.2.2 U(m) 群及其子群与陪集计算的类设计........................................... 204
6.2.3 置换群及其子群与陪集计算的类设计............................................. 207
6.2.4 格判断与计算的类设计................................................................. 210
6.3 代数结构问题求解的实现........................................................... 213
6.3.1 运算性质判断的实现....................................................... 213
6.3.2 U(m) 群及其子群与陪集计算的实现.............................................. 217
6.3.3 置换群及其子群与陪集计算的实现................................................ 223
6.3.4 格的判断与计算的实现................................................................. 229
6.4 代数结构问题建模与求解小结....................................................... 234
参考文献............................................................................... 235
