Thank you Marcus.  

I think I got it!

Nick 

Nicholas S. Thompson
Emeritus Professor of Psychology and Ethology, 
Clark University ([email protected])
http://home.earthlink.net/~nickthompson/naturaldesigns/




> [Original Message]
> From: Marcus G. Daniels <[email protected]>
> To: The Friday Morning Applied Complexity Coffee Group <[email protected]>
> Date: 7/13/2009 10:13:41 AM
> Subject: Re: [FRIAM] Philosophy, Mathematics, and Science
>
> Nicholas Thompson wrote:
> > How, then, could a mathematical proof NOT be a form of algorithm?  
> To me, the word algorithm suggests an emphasis on clarity and economy of 
> effort, whereas a proof emphasizes the fact a conclusion in correct, and 
> why.   But a problem can be cast either way.
>
> In logic programming (Prolog):
>
> factorial(1,1).
> factorial(N,F):-
>   N > 1,
>   NN is N - 1,
>   factorial(NN,FF),
>   F is N * FF.
>
> The point here is that given an expression like factorial(5,F) the 
> Prolog interpreter _solves_ for F, or, given a query like 
> factorial(5,100) will answer "no" (it's actually 120).  The execution 
> trace of such a program is the proof.. (Although it would often being 
> intolerably long.)
>
> In a typical imperative programming (Java), the code just moves forward 
> step by step until n <= 1.
> The execution path is defined, instead of being deduced (or more 
> generally in constraint logic programming systems.. found).
>
>     public static long factorial( int n )
>     {
>         if( n <= 1 )  
>             return 1;
>         else
>             return n * factorial( n - 1 );
>     }
>
>
>
>
> ============================================================
> FRIAM Applied Complexity Group listserv
> Meets Fridays 9a-11:30 at cafe at St. John's College
> lectures, archives, unsubscribe, maps at http://www.friam.org



============================================================
FRIAM Applied Complexity Group listserv
Meets Fridays 9a-11:30 at cafe at St. John's College
lectures, archives, unsubscribe, maps at http://www.friam.org

Reply via email to