免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234下一页
最近访问板块 发新帖
查看: 19305 | 回复: 36
打印 上一主题 下一主题

[算法] 请教一个最基础的问题---什么是''计算''( 计算的本质) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-07-01 10:34 |只看该作者 |倒序浏览
(1)这个问题我理解不清, 计算理论导引 中的关于 计算 的自动机的解释过于复杂,能否从哲学的角度来解释一下计算的本质是什么?说的简单一些,
(2)还有,离散数学中 对 计算 的解释是就是 函数 ,而且是自变量可以是多元的函数,就是这一句了,函数的本质特性就是" 单值依赖" ,难道 计算 的本质也是这样么?没有别的了么?
     这样的解释在 编程 中不是太理想,编程语言中,表达式,语句算作是一类的东西, 将 定义 算作是语句之外的东西了,定义 就是创建,或者说是 构造 ,记录,用函数来解释总是感觉并非
    特别妥当,似乎还能有更加恰当的解释,毕竟这些东西 都是 计算,要么就不会叫计算机了.
(3)编程 中出现的东西都可以看作是 计算,或都可以归为 计算 ,那么其中常见的 计算操作 就是 定义类,定义函数,(定义个抽象的概念,创建组合的事物和从中选择成员);从类来生成具体的数据,        还 有执行反映成员间联系的函数,等等.那么是否可以 对计算进行分类,找出基本的计算,这样的话,计算 也是事物 了?
  说的有些乱,毕竟我对 计算 没能够理解清楚,我只能够表达出这些了.希望大家帮帮我,谢谢

论坛徽章:
0
2 [报告]
发表于 2009-07-01 11:41 |只看该作者
计算就是合成规则。

考虑一个集合 S = {a, b, c, d, e ...}
定义一个映射,f(x) = a, 也就是说S中每个元素都映射到a。
定义另外一个映射,g(x) = b,也就是说S中每个元素都映射到b。
定义一个映射 e(x) = x; S中每个元素都映射到自身。显然,可以证明这是个单位元。

f(g(x))就是一种合成 ,结果显然是a
g(f(x))也是一种合成,结果是b。

在集合S 上,可以定义很多映射,映射间的合成,就是一种运算,活着叫做合成规则。
常见的合成规则有+ - * /  % 等等。

以+为例,+可以是算术的加,2+3
也可以是行列式相加。
也可以是多项式相加。

更一般的,可以是任意一个映射和另外一个映射的合成。
比如f(g), 或者g(f), 都可以把他叫做一种加法。

总而言之,计算是运算的直观说法,运算又是合成规则的直观说法。

[ 本帖最后由 yy_galois 于 2009-7-1 11:44 编辑 ]

论坛徽章:
0
3 [报告]
发表于 2009-07-01 12:58 |只看该作者
"计算"是广义的!

论坛徽章:
0
4 [报告]
发表于 2009-07-01 13:00 |只看该作者
算法是把输入转变为输出的确定的运算步骤。

论坛徽章:
0
5 [报告]
发表于 2009-07-01 15:37 |只看该作者
计算'应该就是在算上面吧

论坛徽章:
0
6 [报告]
发表于 2009-07-01 20:28 |只看该作者
我感觉计算范围应该更广一点,包括输入和输出,并不只是规则.直白的说就是某个系统完成了一次从输入到输出的变换.

论坛徽章:
0
7 [报告]
发表于 2009-07-01 20:43 |只看该作者
原帖由 lucyqixi 于 2009-7-1 20:28 发表
我感觉计算范围应该更广一点,包括输入和输出,并不只是规则.直白的说就是某个系统完成了一次从输入到输出的变换.


输入,输出,加计算过程,那是算法。

计算就只是规则。

概念搞清楚先。

论坛徽章:
0
8 [报告]
发表于 2009-07-01 23:49 |只看该作者
计算=算术?

论坛徽章:
0
9 [报告]
发表于 2009-07-03 13:35 |只看该作者
谢谢大家的回复,我也是一直在考虑,现在比提问前认识的清楚 了一点,但还是有些不解之处。
只要是给出了一个函数,那么,这个函数就一定是可以计算的,即,任何的函数都是可以计算的,或,任何的函数给定后,将他的参数给出后,那么只要执行,就可以得到结果,确定的结果。给出了函数,就是计算规则已给出了。
若是不能够满足这一要求,哪怕是以函数的形式来描述出,如:y =f(x),但是f()的运算规则没有指明或是运算方法不存在,就不是一个完整的函数描述,特别是运算规则(方法)不存在的,本质上不是函数,
如判断代数式的整数解存在的问题,以这样的方式来写出 f(任意代数式),值集为{ 0,1} 对应存在,不存在,由于f是不能够给出的,所以这个以‘函数的方式’给出的东西不是函数,因为本质上就是不能够计算的。

论坛徽章:
0
10 [报告]
发表于 2009-07-03 13:53 |只看该作者
明确给出的函数是可以计算的(即序对集是已知的,或计算规则是明确的),函数的执行可以称为计算或是运算,或者笼统的将函数称为计算。
将已有的函数进行复合,所形成的复合体也是可以计算的,可以将这个复合体看作一个新的函数;
一个问题当以' 怎么做' 的方式 给出后,就是可以计算的;当以 ‘描述性’的方式给出后,不能够保证可以被‘计算’。。。
我再想一想吧,
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP