Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 用一阶谓词逻辑表示计数函数_C - Fatal编程技术网

C 用一阶谓词逻辑表示计数函数

C 用一阶谓词逻辑表示计数函数,c,C,给定以下计算字符串中字母字符数的函数,我如何在一阶逻辑中表示这样的函数 注意:AlphaChar只是一种无符号int类型 int alpha_char_strlen (const AlphaChar *str) { const AlphaChar *p; for (p = str; *p; p++) ; return p - str; } 提前感谢,您可以将strlen定义为 空字符串的长度为0 如果字符串的形式为,则其长度为n+m 假设你的结

给定以下计算字符串中字母字符数的函数,我如何在一阶逻辑中表示这样的函数 注意:AlphaChar只是一种无符号int类型

int alpha_char_strlen (const AlphaChar *str)
{
    const AlphaChar *p;

    for (p = str; *p; p++)
        ;
    return p - str;
}  

提前感谢,

您可以将strlen定义为

  • 空字符串的长度为0
  • 如果字符串的形式为
    ,则其长度为n+m
假设你的结构中有算术

HasLength(EmptyString,0) ^ \forall x \forall y \forall z \forall k \forall l \forall m
    (HasLength(x,k) ^ HasLenght(y,l) ^ HasLength(z,m) ^ z = xy => m = k + l)

确切地说,这不是一个家庭作业,而是一个更一般项目的一部分。“一阶逻辑”似乎是“一阶谓词演算”的另一个名称——这使得这是一个CS问题,而不是编程问题本身。