56
-
physis #56 Úgy értem, hogy a teljes reprodukálandó rendszernek nem a DNS-t tekintjük, hanem a sejtet (a benn elevő DNS-sel együtt). A gyár az pedig a sejt összes gépi alkatrésze együtt (enzimek, mindenféle gyártó gépecskék-szervecskék a sejten belül, nem értek hozzá). A tervrajz pedig a DNS. Az új sejtet a régi sejt gyártja, az ehhez szükséges információ (egy része) a DNS-be van kódolva. A 22-es csapdája ott törik meg, hogy magát a DNS-t nem kell külön legyártani, hiszen az közvetlenül is lemásolható az eredeti szalagról. Tehát a DNS-nek nem kell külön még a saját információtartalmát is valami végtelen matroskababaszerű metaszinten még külön tartalmaznia, elég ha csak az őt körülölelő ,,gyári'' részt leírja.
Mármint ez az alapötlet ez (és úgy tudom, az Életjátékban is ez van felhasználva). A tényleges biológiai valóság persze lehet részletesebb, de én úgy tudom, a lényeg nagyjából ez. Vagyis hogy nincs 22-es csapdája, hanem egy jól rétegezhető behúzási folyamattal meg lehet oldani az önreprodukáló gyár kérdését.
A C-beli quine-nál egy rövidebb, tömörebb PHP-quine: codepad link ITT. A tömörebb nyelvi lehetőségek miatt itt talán jobban látszik, hogy a tervrajz ($plan) tényleg csak a környező gyártómasinériát kódolja, a saját magára vonatkozó rész helyén elég, ha csak egy ! metakarakter (copyutasítás) szerepel. A másolás könnyebb, mint a gyártás, nem igényel külön részletezett metanyelvi ábrázolást.
Az a kérdés még, hogy ezt a quine-technológiát hogyan találta fel a természet (hiszen ma az életen kívül nem nagyon találni ilyen természeti jelenséget, tehát nem lehet közvetlenül látni, hogy miből tudott ez a technológia kifejlődni). Talán ez valami bootstrap (behúzási) folyamat eredménye lehetett, amit persze ma már nem annyira könnyű reprodukálni (épp az élet mindenütt jelenvaló ,,zavaró'' jelenléte miatt), de a prebiotikus világban még valós módon végbemehetett. Egy egyszerűbb, de működő szerkezetre fokozatosan ráépülhet egy bonyolultabb, de csak részben működő rendszer, amely ahogy egyre önállóbbá válik, alóla fokozatosan eltűnik a régi ,,állványzat'', így utólag nézve szinte csodának látszik a kifejlődése (a középkori katedrálisoknál is nehéz megérteni, hogy a kezdetleges technikával hogy lehetett felépíteni őket, a valóságban persze mindenféle ideiglenes segédépítmény is lehetett ott, amit később elhordtak). -
errorista #55 az a sejtesem, hogy a DNS pont nem igy mukodik, hanem ugy, hogy az az utasitas, hogy a DNS-t (a forraskodot) nezze meg, hogy mit tartalmaz, es masolja le. Azaz "csalassal". -
physis #54 codepad link itt -
physis #53 Az Általad írt módszer teljesen jó, megírtam plain C-ben, az idézőjellel kapcsolatos gondokat az előző hsz-ben említett escape-eléssel javítottam. Szóval így tényleg pontosan működik, diff-fel meg lehet nézni, hogy az output nem különbözik a forráskódtól. -
physis #52 Szerintem ez nagyon szép megoldás, és nem jutott eszembe még soha így, köszönöm, hogy ilyen értetően leírtad. A rögtön kipróbálható működéstől szerintem már nem választja sok el, valószínűleg csak annyi, hogy a tervrajz-stringben belül is vannak idézőjelek (mármint nem a tervrajz-stringet határoló idézőjelpárra gondolok, hanem épp azokra, amiket a tervrajz-string mint a forráskód részét alkotó idézőjeleket ábrázol), ezeket kétféleképp kell majd használni: a külső részeknél közvetlenül ki lehet íratni őket, a középre beszúrt tervrajz-másodpéldánynál pedig escape-elve kell őket kiíratni. Ezért itt kell egy ,,escape''-elő, ,,idéző'', ,,kódoló'' segédfüggvény is:
SPOILER! Kattints ide a szöveg elolvasásához!
function idéz(string s)
{
az idézőjel-karaktereket backslash-idézőjel karakterszekvenciákra cseréli:
foreach char c in s do replace c as '"' ---> "\"";
}
function quine(string előtteQutána) {
print előtte;
print idéz(előtteQutána);
print utána;
}
string tervrajz = "function idéz(..){..}
function quine(..){..}
string tervrajz = "Q";
quine(tervrajz)";
quine(tervrajz);
Még nem tudtam kipróbálni, de szerintem így már működni fog.
Az escape-elés elméleti szinten szerintem valami olyasmivel kapcsolatos, hogy a tárgynyelvi és a metanyelvi szintet elválasztjuk, és az egyik nyelven belül reprezentáljuk a másikat. Sajnos az általános elméleti keretre már nem emlékszem, de van ilyen, a quine-ok ötlete nagymértékben általánosítható, és épp ezért ez a megoldás a biológia által a valóságban alkalmazott megoldással rokon. -
errorista #51 Letezik JS-ben irt JS ertelmezo :). De talan az eval-nak azt a funkciojat, hogy osszefuz ket stringet, meg lehet eval nelkul is oldani. Most mar nehezen tudok elszakadni elobbi gondolatmenetemtol:
SPOILER! Kattints ide a szöveg elolvasásához!function muvelet(s)
{
ha s egy "elotti Q mogotti" tipusu string, akkor s-t "elottielotti Q mogottimogotti" tipusuva alakitja
}
a = 'elotti Q mogotti'; //a egy string, ' Q ' egy elvalaszto karakter szerepet tolti be
muvelet(a);
print(a);
Ahol az elotti helyere beirjuk, az elotti elott, a mogotti helyere pedig a mogotti mogott levo forraskodot, es ha szerencsenk van, a nyelv tudni fogja, mikor string, es mikor kod.
A forraskodunk elottielotti Q mogottimogotti alaku lesz, a kiprintelt szoveg is.
Egyre kevesebb eselyet latom, hogy ebbol egy mukodo JS kodot kapjak (bar hemzsegnek a neten).
Ugy nezem, korulbelul ugyanaz, mint mit te is irtal:
Az általam látott quine-okban a dolog úgy néz ki konkrétan, hogy van egy ,,gyár'' (mindenféle stringkezelő és kiírató függvények, tehát lényegében maga a program), és van egy tervrajz (egy hosszú string). A teljes quine program forráskódja nem más, mint a jól definiált stringkezelő-és-kirató függvény (gyár), plusz a tervrajz-string **együtt egy fájlban**.
A stringkiírató résznek (gyárnak) argumentumul adjuk a nagy stringet (tervrajzot), erre ez kiírja majdnem a teljes program forráskódját, kivéve magát a tervrajz-stringet. Tehát a gyár a tervrajz alapján új gyárat duplikál, de a tervrajz reprodukálása kimarad. Éppen ezért a tervrajz-stringben van egy ,,copy''-metakarakter, amely a ,,gyárat'' arra utasítja, hogy azon a ponton magát a teljes tervrajz másolatát ,szúrja bele' az éppen születőfélben lévő új gyárba. Az eredmény az, hogy a gyárból és a tervrajzból alló rendszer egy új gyárat rak össze, és a tervrajz is lemásolódik, tehát ugyanolyan új rendszer képződik a régi mellé. -
physis #49 Az idézőjelek pontos kitételével kapcsolatos eltérés még nem nagy baj, ezt lehet finomítani, lehet escape-elő segédfüggvényt is berakni, itt a fontos dolog inkább az, hogy az eval használata sajnos szintén tiltva van, tehát csak a print utasítás és a szokásos algoritmuselméleti struktúrák és stringműveletek használhatóak, nem hívhatjuk meg az értelmezőt (ez főleg az ilyen eval-szerű szolgáltatásokat nyújtó programnyelvekben érdekes), nem használhatjuk az operációs rendszert. Sajnos nem tudom jól megfogalmazni, a lényeg olyasvalami, hogy a program ,,nem láthat ki saját magából'', ez a megkötés kell ahhoz, hogy az igazi lényeg kijöjjön. -
#48 Igen, hogy ha a rendszered egy képzelt rendszer (itt most egy rajzfilmhez hasonlítod), aminek a létezését semmi sem igazolja (mondjuk eleve úgy van kitalálva, hogy még véletlenül se lehessen).
Így tényleg csak hinni lehet benne.
De ne mondd azt, hogy az is csak hiszi, hogy "nem rajzfilmfigurák vagyunk", aki nem ért vele egyet. Miért kéne nem hinni bármiben is, aminek nincs semmiféle alapja?
Végtelen mennyiségű hasonló marhaságot ki lehetne találni, és azt mondani, hogy aki szerint ez nem létezik, az csak hiszi, hogy nem létezik. Értelme nem sok van. -
Zero 7th #47 Pedig ez egész egyértelműen erre vezet vissza. Mondasz-e olyat, amiről nincs semmi adatod, tudásod, megfigyelésed, vagy ilyen esetben csendben maradsz? És bizony ez a határvonal, amin túl az ostobaság végtelen birodalma terül el. Hülyeséget magyarázni bárki tud, az nem teljesítmény. -
errorista #46 Hat, papiron megvan, javascriptben nem tudom prezentalni, az idezojelek sehogy sem akarnak jol ertelmezodni (azt hiszem, nem a print-printes problemat vezettem vissza idezojelekre)
most igy nez ki, csak nem mukodik:
SPOILER! Kattints ide a szöveg elolvasásához!
var a = 'a="eleje"+a+"vege";' ;
document.write(eval(a));
ahol az elejere kene berini, hogy var a=', a vegere meg hogy '; document.write(eval(a));. Azt hiszem, ez ugyanaz a gyar-tervrajz, amit mondtal
koszonom, szep problema. -
Zero 7th #45 Rendben, és miután ezt tisztáztuk, miért is jobb határozottan állítani valamit (ami egyébként önmagában is ellentmondásos és most már hosszú szakaszairól tudjuk, hogy biztosan nem igaz), mint mondjuk azt mondani, hogy "erről nincs információnk, úgyhogy inkább ne mondjunk róla semmit, mert az szinte biztosan hülyeség lesz"?
Én nem mondom, hogy nem létezik a képzelt barátotok, én azt mondom, hogy a képzelődésetek retardált. Semmit nem mondok a hit tárgyáról, a hittel magával van bajom. Kurvamindegy, hogy a keresztény Isten, zsidó Jahve, arab Allah, hindu sok faszság, vagy bármi modern faszság az ezós baromságoktól az ufókig. Hogyan van bátorságuk a nagy büdös semmivel a kezükben egyáltalán kinyitni a pofájukat? -
physis #43 Kedves Erroista,
Csak az számít csalásnak, ha a program beolvassa a saját forráskódját fájlból, és azt írja ki. Tehát pl. egy quine nevű fájlban ha efféle program áll (most itt egy ad hoc képzelt ,,keverék'' programnyelven):
sourceCode: string;
sourcecode := readFile("quine");
print sourceCode;
az így ,,csalás'', ez nem számít igazi quine-nak. Az a lényeg, hogy az alábbi problémasorba beleütközzék az ember:
print "";
ez nem jó quine, mert semmit sem ír ki , míg a forráskódja legalábbis egy print-et tartalmaz.
print "print";
ez sem jó quine, mert csak egy "print"-et ír ki, míg a forráskódja ennél azért immár hosszabb.
print "print "print "";
látszik, hogy mindig rendre ,,le vagyunk maradva'' (két printet ír ki, míg a forráskód három ilyen beágyaott printből áll), szóval mindig lemarad a Matrjoska-baba legkülső babája.
A probléma tehát - programnyelvtől függetlenül - alapvetően egy matematikai, logikai kérdés. Erre van megoldás (absztrakt módon lehet úgy tekinteni, hogy tkp. egy függvény fixpontját keressük, de a gyár-tervrajz hasonlat szemléletesebb lehet), és az élet is ezt használja. -
errorista #42 "Bizonyítani elméletileg az kellene, hogy a rajzfilm figura _képes_ az őt körülvevő világból szerzett ismeretei alapján megállapítani, hogy rajzolt-e vagy sem."
Bizonyitanod azt kellene, amit allitottal, hogy "egy rajzfilm figura az általa érzékelt rajzolt világból szerzett ismeretei alapján sem bizonyítani, sem cáfolni nem tudja, hogy őt rajzolták-e vagy sem, maximum _hihet_ benne, ahogy az ellenkezőjét is csak hitbéli meggyőződésből állíthatja.". -
asgh #41 Bizonyítani elméletileg az kellene, hogy a rajzfilm figura _képes_ az őt körülvevő világból szerzett ismeretei alapján megállapítani, hogy rajzolt-e vagy sem. Bár ettől a probléma még továbbra is inkább filozófiai, mint tudományos kérdés maradna.
Annak megítélése pedig, hogy az általunk valamilyen módon érzékelhető világ szimuláció-e vagy sem, az egy dolog, és eleve más kérdés, hogy kreált-e. Azzal pl. hogy bebizonyítjuk, hogy a világunk szimuláció, még nem adtunk választ arra, hogy a "valós" világ, amiben a szimulációt futtatják kreált-e. (Az idézett cikkben egyébként nem bizonyítottak semmit, csak azt vetették fel, hogy idővel képesek lehetünk a bizonyításra.)
Amúgy én nem állítom, hogy a világ kreált, sem pedig az ellenkezőjét, csak azt, hogy ez a kérdés jelenleg a tudomány által vizsgált területen kívülre mutat és hogy az egész felvetés valamivel komplexebb, mint hogy elintézzük annyival, hogy vannak a józan emberek, meg vannak a hülyék, akik egy ősz szakállú öregemberben hisznek. -
errorista #40 "A quine az egy olyan program, ami saját forráskódját képes kinyomtatni. (Természetesen bizonyos jól körülhatárolható ,,csaló' ,,megoldások' tiltva vannak)"
Mik azok, amik tiltva vannak? En mondjuk nem tudok programozni, de ha elmondod, hogy mit szabad csinalni, es mit nem, akkor lehet, hogy elszuttyognek vele egy papiron. -
errorista #39 "egy rajzfilm figura az általa érzékelt rajzolt világból szerzett ismeretei alapján sem bizonyítani, sem cáfolni nem tudja, hogy őt rajzolták-e vagy sem, maximum _hihet_ benne, ahogy az ellenkezőjét is csak hitbéli meggyőződésből állíthatja."
igazsag szerint en meg nem lattam erre bizonyitast, hogy egy rajzfilmfigura ne tudna igazolni vagy cafolni, hogy rajzfilmben van, akar tisztan gondolati, akar empirikus modon.
Valamikor volt egy cikk az SG-n, hogy bebizonyitottak, hogy mi nem szamitogepes emulacio reszei vagyunk (most a cikket nem talalom, sry), azt mondjuk nem hiszem el, de az otlet, hogy letezik ilyen bizonyitas, nem elvetendo -
asgh #38 Egy dolgot érdemes tisztázni a vallásosok "képzelt barátját" illetően:
a nem szélsőségesen fanatikus vallásosok úgy fogják fel ezt a kérdést, hogy egy rajzfilm figura az általa érzékelt rajzolt világból szerzett ismeretei alapján sem bizonyítani, sem cáfolni nem tudja, hogy őt rajzolták-e vagy sem, maximum _hihet_ benne, ahogy az ellenkezőjét is csak hitbéli meggyőződésből állíthatja. -
gforce9 #37 pl. ebben:
http://www.youtube.com/watch?v=LD-qQNICZ-Y&list=SP50C9C5AB0104A6CF&index=15
Jó sorozat, érdemes az első résztől nézni. Azt hiszem ez a 3. vagy 4. rész. -
gforce9 #36 Akkor pl. Dávid Gyula nem mond igazat? Mert az ő előadásaiban ez van és ahogy látom az összes szakmai előadásban. Nem néznél utána? Mert én utánanéztem és semmi olyat nem találtam amit írsz. A csillagokban zajló folyamatot hellyel közzel úgy írják, ahogy te is. Bár inkább azt mondják, hogy a nagy energiaszinten előfordul, hogy a protonból neutron lesz ahogy leírtad. Viszont a neutron önmagában elbomlana. Akkor maradhat meg, ha találkozik egy protonnal és összeragadnak. Ez az első lépés. A He fúziójához még több energiaszint kell, meg plusz egy kis trükk a szénig.
Az ős plazma kihülése után volt He is, meg szórványosan egyéb is, de az jelentéktelen. Mindenhol ezt találom leírva. 2005 utáni előadásokat és írásokat nézegettem főleg, mert ez a terület gyorsan fejlődik.
-
Vol Jin #35 "Nyilván atomok nem lehettek a plazmában, csak atommagok. Azelőtt meg még atommagokról sem lehet beszélni. Mindenesetre amikor már annyira kihűlt az univerzum, hogy, hogy az atommagok "köré" beállhattak az elektronok és létrejöttek az atomok, akkor azok jórésze hidrogén volt. Én úgy tudom hogy 25%-a hélium, de annál nehezebb elem nem jött létre. Ezen biztosan nem fogunk összeveszni. De rákeresek."
Nem jó részük volt hidrogén, hanem minden. Mert a neutron, ami a nehezebb atommagokhoz szükséges, azok már a csillagokban jöttek létre fúzióval. Két proton nagy nyomáson és magas hőmérsékleten egyesül egy deutériummá úgy, hogy az egyik neutronná válik. Konkrétan az UUD kvarkokból álló proton UDD kvarkokból álló neutronná alakul úgy, hogy egy Up-kvarkja Down-kvarká alakil, s a felesleges kvantumtulajdonságaitól egy pozitron (antielektron) és egy neutrinó megteremtésével szabadul meg. Ugye így marad meg a töltések száma. Mert ugye egy pozitív protonból semleges neutron lett. És milyen szép, hogy antielektron termelődött, mert így az megsemmisíti a feleslegessé vált elektron, ami megakadályozta, hogy a protonok fogyásával és neutronná válásával negatív töltésű legyen az univerzum. A neutrinó az meg ugye semleges. Az anihilűcióban résztvevő elektron és pozitron pedig energiát ad le a világnak és süt tőle a napocska. Mondjuk csak részben, de ez mindegy. A lényeg, hogy az első atommagok kizárólag egy szál protonból álltak.
Tehát ahhoz, hogy legyen neutron, ahhoz előbb csillagoknak kellett létrejönniük, és csak ettől kezdve lehetett deutérium és a hidrogénnél nehezebb atommagok. -
gforce9 #34 Na azon én is meglepődnék :) -
#33 Akkor úgy fogalmazok, hogy meglepődnék, ha csak itt alakult volna ki élet. Sokkal meglepőbb lenne, mint az, hogy máshol is kialakult. (Továbbra is feltételezve, hogy spontán folyamat.)
Igazad van, valóban rengeteg mindent nem ismerünk még ezzel kapcsolatban. -
gforce9 #32 Nem tudjuk mekkora véletlen kellett hozzá, ugyanis nem tudjuk, hogy pontosan hogyan alakult ki. Így nem tudjuk annak a matematikai valószínűségét, hogy teszemfel 100 föld szerű bolygóból hányon alakul ki élet, ha hasonló körülmények vannak. Lehetséges az is, hogy mindegyiken, de lehet hogy 100 ból csak 1-en vagy mégrosszabb arány. Nem lehet tudni. Így viszont nincs miből extrapolálni. A másik része az, hogy a jelenleg megfigyelt bolygórendszerek nemnagyon akaróznak hasonlítani kicsit sem a mienkre, legtöbbjük lakható zónájában gázóriás kering. Vagy annyira elliptikus a pályájuk, hogy a - sok fogktól a + sok fokig változik a hőmérséklet rajtuk. Persze ez még lehet mintavételezési hiba is. Mindenesetre én azt mondom, hogy felesleges számolgatni, mert lényegében nincs statisztikai alapunk arról, hogy máshol van e élet, sem arról, hogy mekkora eséllyel alakul ki, ha amúgy minden feltétel sem adott, sem arról, hogy egyátalán milyen gyakoriak azok a bolygók, ahol a viszontagságok (forróság, fagy, légköri dolgok, vulkanikus hatások) eléggé kicsik ahhoz, hogy a bonyolultabb struktúráknak legyen esélye kialakulni. Én nem szívesen extrapolálok úgy, hogy a 3 fő befolyásoló tényezők egyikét sem ismerem, csak 1 esetben :) -
#31 Vagyis nem, eredetileg volt jó. :D -
#30 Vagyis Tejútrendszerhez hasonló csillagrendszer... -
#29 Szerintem elég azt alapul venni (legalábbis a miénkhez hasonló élet szempontjából), hogy hány Naprendszerhez hasonló csillagrendszer lehet még az Univerzumban. Szerintem elég sok.
És ha itt spontán létrejöhetett, akkor létrejöhetett máshol is. Szintén - szerintem - elég sok helyen. Persze itt csak magáról az életről van szó, tehát a legprimitívebb egysejtes szerveződésről. -
#28 Ha feltételezzük, hogy a földi élet spontán jött létre (és miért ne feltételeznénk ezt), akkor statisztikailag mind térben mind időben annyiszor jöhetett létre élet az (ismert) univerzumban, mint "égen a csillag". És itt csak a földi típusú életről beszélünk, mivel nem ismerünk mást. Szóval szerintem ez egyértelműnek tűnik. -
gforce9 #27 Ezzel a gondolattal egyelőre az a gond, hogy eddig csak egy ilyet ismerünk. Itt a földit. 1 adatból pedig statisztikát csinálni nem lehet. Mindazonáltal én is úgy gondolom, hogy nem egyedi jelenség, de ha mondjuk a marson találnának életre utaló nyomokat és kiderülne hogy a földitől teljesen eltér, tehát függetlenül fejlődött, az már elég jó megerősítése lenne annak amit elmondtál, hiszen ha 1 naprendszerben már 2 hely van ahol kialakul, akkor bizonyára nagyonsok helyen van élet. Az értelem megjelenése az viszont más kérdés. Szerintem érdemes a kettőt különválasztani. Mert egy nagyon "viharos" bolygó alkalmas lehet egysejtűeknek, de a bonyolultabb struktúrákat szétverheti. Arról nem is beszélve, hogy egy iylen hosszú evolúciónak, mint a földi, kellett jósok idő és viszonylag nyugodt, stabil környezetben. Erről sincsen túl sok adatunk, hogy ez vajon mennyire egyedi? -
Katalizátor #26 Csak 1 Tejútrendszer létezik. -
vax #25 Szerintem is a nagy számok törvénye és az élet egyetemessége alapján nagyon sok értelmes cívilizáció létezhet és még több ahol az élet kialakult. Ha csak minden egyes tejútrendszerben csak egy értelmes élet van, már az is nagy "mennyiséget" takar. Több száz milliárd tejútrendszer létezik. Pedig ezt talán az egyik "legóvatosabb" szám, hiszen egy tejútrendszerben több száz milliárd naprendszer létezik. Ha pedig az egy tejútrendszer egy civilizáció elfogadható egy példának, akkor sajnos óriásik a távolságok. Hozzánk a legközelebbi az Androméda 2 millió fényév! Igy a kapcsolat sajnos nagyon nehézkes. :( A legközelebbi naprendszer kicsivel több mint 4 fényév. Jelenleg ennek az áthidalása is jelenlegi technikánkkal lehetetlen és iszonyatosan hosszú időbe telne. -
Sequoyah #24 Tér és idő volt bőven. Sőt, olyan sok idő és tér állt a rendelkezésre, hogy ezeknek a bekövetkezése már gyakorlatilag törvényszerű.
Én gyanítom, hogy ha bárhol van egy ős-földdel ekvivalens bolygó, és kap pár milliárd évet, akkor azon nagy valószínűséggel ki fog alakulni az élet.
(A fejlődés pedig exponenciális, ha kialakult egy osztódóképes sejt, akkor abból már viszonylag gyorsan kialakul a magasabb rendű élet, mint nálunk a fák, vagy az állatok.) -
physis #23 A lényeg még, hogy az alaptrükk nagyon sokféle arccal és formában meg tud jelenni. Maga Quine (akiről elnevezték) eredetileg afféle logikai kérdésként vetette fel a témát,
http://en.wikipedia.org/wiki/Quine%27s_paradox
és persze számítógépek akkor még nem voltak, tehát a téma és a megoldás egy természetes nyelven megfogalmazott logikai ötlet volt. Tehát quine-ok nemcsak bármely Turing-teljes progamnyelven írhatók, de a quine-ok logikai megfelelői léteznek a matematika világában is (ott persze nem ön-printelő programok a quine-ok, hanem ön-hivatkozó képletek (olyan képletek egy tetszőleges (de kellően erős) logikai elméletben, amelyek önmaguk ,,tipográfiai'' reprezentációjára értékelődnek ki.
http://en.wikipedia.org/wiki/Self-reference
Mivel maga az egész quine-alapötlet emberileg szellemesen hat, de technikailag nem különösebben elvadult, ezért véletlenszerű létrejöttét én el tudom képzelni, ha a természetnek elég tág kísérletezési tér és idő áll rendelkezésre. -
physis #22 Ez tényleg olyan dolog, amihez egy nem-triviálisnak tűnő ,,szellemesség'' kell, de ez a trükk nem beláthatatlanul kifinomult, ,,csak'' meglepő. Programozáshoz vagy matematikához szokott emberrel úgy lehet a leggyorsabban érzékeletetni a dolog ,,lényegét'', hogy megkérjük, írjon egy quine-t (tetszés szerinti programnyelven, akár mondjuk C-ben).
A quine az egy olyan program, ami saját forráskódját képes kinyomtatni. (Természetesen bizonyos jól körülhatárolható ,,csaló'' ,,megoldások'' tiltva vannak). A feladat elsőre nem hangzik különösebben érdekesnek, de ha az ember elkezd próbálkozni vele, hamar rájön, hogy épp az a nehézség, amit Te is említettél: a programnak egyszerre kellene ,,gyárként'' is és ,,tervrajzként'' is működnie: össze is kell rakni a kiíratandó forráskódot mint stringet, de minden művelet, amit ehhez szeretnénk használni, egyúttal maga is a forráskód részévé válik, tehát azok kiíratásáról is legott gondoskodni kell. A feladat látszólag végtelen körbe bonyolódik, de valójában egy nem túl bonyolult (bár szellemes) trükkel megoldható (ami leginkább a szimbólumok escape-eléséhez hasonlít).
[url="http://en.wikipedia.org/wiki/Quine_%28computing%29"]Wikipedia: Quine (computing)[/url]
David Madore: [url="http://www.madore.org/~david/computers/quine.html"]Quines (self-replicating programs)[/url]
http://www.madore.org/~david/computers/quine.html
A dolog szorosabban úgy jön ide, hogy a természet is lényegében ezzel analóg megoldást alkalmaz. (És a Conway-féle sejtautomata-világban felfedezett önreprodukáló gép alapötlete is ez).
A lényeg az, ahogy Te is elkezdted írni: van egy ,,gyár'', egy hús-vér fizikai alkarészekből álló üzem, és van egy ,,halott'' tervrajz, ami csak le van írva szimbólumokkal egy ,,szalagra'' (stringre, DNS-re). A teljes reprodukálandó rendszer a gyárból és a tervrajzból áll **együtt**.
A gyár fogja a tervrajzot, és elkészít belőle egy másik gyárat (ezt megteheti, mert a tervrajz a gyár teljes leírását tartalmazza). Ez persze még nem megoldás, hiszen a teljes rendszer reprodukálásához nemcsak a gyárat, hanem a tervrajzot is duplikálni kéne. Itt jön a lényeg: a tervrajz duplikálása nem különösebben nehéz, hiszen az csak egy szimbólumstring, azt csak le kell másolni.
Az általam látott quine-okban a dolog úgy néz ki konkrétan, hogy van egy ,,gyár'' (mindenféle stringkezelő és kiírató függvények, tehát lényegében maga a program), és van egy tervrajz (egy hosszú string). A teljes quine program forráskódja nem más, mint a jól definiált stringkezelő-és-kirató függvény (gyár), plusz a tervrajz-string **együtt egy fájlban**.
A stringkiírató résznek (gyárnak) argumentumul adjuk a nagy stringet (tervrajzot), erre ez kiírja majdnem a teljes program forráskódját, kivéve magát a tervrajz-stringet. Tehát a gyár a tervrajz alapján új gyárat duplikál, de a tervrajz reprodukálása kimarad. Éppen ezért a tervrajz-stringben van egy ,,copy''-metakarakter, amely a ,,gyárat'' arra utasítja, hogy azon a ponton magát a teljes tervrajz másolatát ,szúrja bele' az éppen születőfélben lévő új gyárba. Az eredmény az, hogy a gyárból és a tervrajzból alló rendszer egy új gyárat rak össze, és a tervrajz is lemásolódik, tehát ugyanolyan új rendszer képződik a régi mellé. -
Zero 7th #21 Már az egysejtűek is képesek ivaros szaporodásra. Így működik az élet, alap szinten. Rá lehet csodálkozni, de azzal nem a azt bizonyítod, hogy ez tényleg olyan csodálatos, csak azt, hogy a témában a tudásod felszínes, vagy nem létező. -
M2 #20 "Arra meg végképp kurvára nem kicsi az esély, hogy egy utód megfoganjon."
Szerintem meg pont erre a legkisebb az esély, az utód 'legyártásának' képessége az élet rejtélyének legnagyobb kérdése. Egyszerre kell egy 'tervrajz' és egy 'gyár' - ezt így hogyan hozta össze a természet? -
gforce9 #19 http://www.staff.u-szeged.hu/~gergely/teaching/GergelyAL_KeresztesZ_A%20kozmologia%20alapjai.pdf
Itt a 6.3.5-ös bekezdésben az áll, hogy:
"a megfigyelési adatok szerint a kezdeti héliumhányad 0, 22 és 0, 25 között van."
Ahogy kiolvasom a bekezdésből a nehezebb elemek innetől max esetlegesen jöhettek létre, mert az univezum ekkorra már túl kihűlt. -
gforce9 #18 Nyilván atomok nem lehettek a plazmában, csak atommagok. Azelőtt meg még atommagokról sem lehet beszélni. Mindenesetre amikor már annyira kihűlt az univerzum, hogy, hogy az atommagok "köré" beállhattak az elektronok és létrejöttek az atomok, akkor azok jórésze hidrogén volt. Én úgy tudom hogy 25%-a hélium, de annál nehezebb elem nem jött létre. Ezen biztosan nem fogunk összeveszni. De rákeresek. -
Vol Jin #17 "Namármost jelenleg úgy tudjuk, hogy az ősrobbanás után csak hidrogén és hélium állt rendelkezésre az első csillagok kialakulásához. "
Kijavítanálak. Százezer évekig még atomok sem jöttek létre, és az első atomok csak hidrogének lehettek. Deutérium sem jöhetett szóba. A csillagokban beinduló fúzió első körben két proton egyesítéséből alkot egy deutériumot.
Ha jól rémlik, akkor az egyik protonból neutron lesz, a pozitív töltésfelesleget egy pozitronnal adja le (antielektron), ami semlegesít egy így feleslegessé vált elektront, amik szabadon kóricálnak, és nem kötődnek egyetlen atommaghoz sem, és fotonná annihilálódnak, továbbá keletkezik egy neutrinó is, ami szintén semleges töltésű. Két dutériumból pedig egy két neutronos és két protonos hélium lesz. Ez a leggyakoribb folyamat, bár van olyan lánc is, ami más folyamat szerint fut le, és kisebb a valószínűsége. Ott egy deutérium egy protonnal egyesül, és egy neutronos és két protonos hélium lesz belőle.
Bár az is lehet, hogy baromira tévedek, de az tuti, hogy az ősrobbanás után atomok sem voltak, és amik később keletkeztek, azok szimpla protonok voltak és az elektronokat is csak ha jól emlékszem 300 ezer évvel az ősrobbanás után tudták befogni. Mert addig olyan forró volt az univerzum, hogy nem tudtak az elektronok a protonokhoz kapcsolódni. És a neutronok, ezáltal a nehezebb atommagok már csak a csillagokban jöhettek létre fúzióval. -
Vol Jin #16 "Még az sem elég, hogy a Kanadai védelmi minidszter beismerte, hogy tud ilyenekről konkrétumot!"
Vagy 90 éves, és vagy 50 éve volt miniszter. Vagy valami hasonló. Hallottál már 90 éves embereket beszélni? Néha nagyon zavarba ejtő. -
Vol Jin #15 "Szeretjuk azt hinni, hogy mi tutira franko egyediek vagyunk...pedig nem."
Ez baromság. Az az ember, aki egyáltalán hallott arról, hogy mik a csillagok, tehát az ősközösségben élő törzseket és a nomád kecskepásztorokat leszámítva az emberiség 90% hisz abban, hogy máshol is van élet. Csak tarts egy közvéleménykutatást a közvetlen környezetedben. A maradék 10% az a Biblia vagy a Korán miatt kételkedő. Mondjuk talibán vagy tanulatlan tanyasi templomba járó áhitatos vénasszony.