From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,93a8020cc980d113 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news3.google.com!proxad.net!213.200.89.82.MISMATCH!tiscali!newsfeed1.ip.tiscali.net!news.tiscali.de!newsfeed.hanau.net!news-fra1.dfn.de!storethat.news.telefonica.de!telefonica.de!newsfeed.arcor.de!newsspool4.arcor-online.net!news.arcor.de.POSTED!not-for-mail From: "Dmitry A. Kazakov" Subject: Re: What is wrong with Ada? Newsgroups: comp.lang.ada User-Agent: 40tude_Dialog/2.0.15.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Reply-To: mailbox@dmitry-kazakov.de Organization: cbb software GmbH References: <1176150704.130880.248080@l77g2000hsb.googlegroups.com> <461B52A6.20102@obry.net> <461BA892.3090002@obry.net> <82dgve.spf.ln@hunter.axlog.fr> <1176226291.589741.257600@q75g2000hsh.googlegroups.com> <4eaive.6p9.ln@hunter.axlog.fr> <1rbtw92apxpl1.1ednvo8v6oiq8$.dlg@40tude.net> <13tcswu59l28h.zxb26cabf9a0.dlg@40tude.net> <15k5b4j6za8ag.tpkuccinvzbd.dlg@40tude.net> Date: Mon, 16 Apr 2007 10:26:26 +0200 Message-ID: NNTP-Posting-Date: 16 Apr 2007 10:26:26 CEST NNTP-Posting-Host: 9e41545b.newsspool3.arcor-online.net X-Trace: DXC=1n>N:YHS7;_PU8j_I0DN6_McF=Q^Z^V3X4Fo<]lROoRQFl8W>\BH3YR18WbRhN6>1RDNcfSJ;bb[UFCTGGVUmh?TLK[5LiR>kgRLnW44[68>eZ X-Complaints-To: usenet-abuse@arcor.de Xref: g2news1.google.com comp.lang.ada:15054 Date: 2007-04-16T10:26:26+02:00 List-Id: On Mon, 16 Apr 2007 00:00:11 +0200, Markus E Leypold wrote: > "Dmitry A. Kazakov" writes: > >> On Sun, 15 Apr 2007 18:01:10 +0200, Markus E Leypold wrote: >> >>> Now I'd like you to close this loophole for arbitrary hand waving and >>> define NON-TRIVIAL in a way suitable to you purposes (but keep it >>> convincing, still -- defining it to FALSE won't wash with me) and >>> perhaps try to prove the central assertion above. >> >> OK, here is a formalization of "non-trivial." Let me use a more or less >> standard notation: >> >> IN is the set of input states (the language over a finite alphabet A) >> S is the set of states >> s1 is the initial state >> T : S x A -> S is the transition function >> OUT = the set of output states (a subset of S, which we don't care) >> >> def: Closure of T >> ---------------------- >> Let a=(a' a'' a''' a'''' ... a*) be a finite input from IN. >> >> P(a)=T(a*, ... T(a''', T(a'', T(a', s1)))) >> >> Informally P(a) is the state to which a would bring the machine. >> >> P : IN -> S >> >> def: Equivalent input states (strings) >> --------------------------------------------- >> a, b of IN are called equivalent iff P(a)=P(b). >> >> Let's denote non-equivalent states as a#b > >> (P was defined on finite strings of IN. Defining it in some reasonable way >> for infinite cases would require efforts, which I don't want to run into.) > >> def: Non-trivial input (language) >> -------------------------------------- > >> IN is non-trivial iff for any finite subset {a1, a2, a3,..., aN} of IN >> there exits an input string b in IN such that forall i=1..N b#ai. >> >> From this definition immediately follows that any machine handling >> non-trivial input will necessarily have infinite S. > > I can't believe it, but you really succeeded to muddle the issue at > hand -- again. > > Your assertion was, that "... programs, which trivial processing> are wrong", aka cannot be implemented on a finite > machine. "Wrong" in my world means: Don't conform to specification. def, Specification ------------------------ Given the language IN (over a finite alphabet A) and OUT, the set of output states. 1. P exists on IN 2. P(IN) in OUT (= forall s in IN, P(s) in OUT) def. Program ------------------ A program is the triplet {s1, S, T} (the initial state, the set of states, the transition function). > But -- you're not talking about specifications at all in your > formalization: You talk about programs and only about programs. Because my initial statement was about processing and the states of. When processing is impossible, then whatever specification it should fulfill, it does not. > My challenge still stands: Define a sutiable predicate NON-TRIVIAL on > _the specification_. I did. Consider OUT instead of whole S. > What you prove (at first glance) is something completely > different. You prove that programs that have a certain property (which > you explained and call "non trivial") cannot be _implemented_ on > finite machines. Since real machines are finite, every real program is > trivial. This obviously is bollocks or at least a rather unusual > definition of trivial. I called it trivial because a valid program processing an infinite input would not require *all* the input to finish. So the ratio card(S)/card(IN)=0. We can use some other word instead of "trivial," if that is reserved for "I can understand this code after three beers..." -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de