ఈమాట » కంప్యూటింగ్ పూర్వాపరాలు, సాధ్యాసాధ్యాలు – 5: గణితంలో ఫ్రేగె జయాపజయాలు

Expand to right
Expand to left

కంప్యూటింగ్ పూర్వాపరాలు, సాధ్యాసాధ్యాలు – 5: గణితంలో ఫ్రేగె జయాపజయాలు

భావం – రూపం

ఫ్రేగె 1879లో తనకి ముప్ఫై ఏళ్ళు నిండకముందే వంద పేజీలు కూడా లేని కరపత్రం ఒకటి ప్రచురించాడు. రెండు జర్మన్ పదాలని, Begriff (“concept”), Schrift (roughly “script” or “mode of writing”), కలిపి Begriffsschrift అన్న పేరు పెట్టాడు - సంఖ్యాగణితం నమూనాగా రూపొందించిన ఫార్ములా భాష అనే వివరణతో. దీనిని తర్క చరిత్రలోకెల్లా ముఖ్యమైన గ్రంథంగా గుర్తిస్తారు. భావాలకి నిర్దుష్టమైన సంకేతాలతో రూపాన్నిచ్చే ప్రయత్నమని నేనర్థం చేసుకున్నాను.

దీంట్లోకి సంఖ్యాగణితాన్ని ఫ్రేగె ఎందుకు తెచ్చాడో ముందర క్లుప్తంగా చెప్పి తర్వాత వివరిస్తాను. సంఖ్యా గణితం నిజ స్వరూపం ఏమిటో తెలుసుకోవాలన్నది అతని జీవిత ధ్యేయం. మనం ఏ రంగంలో పనిచేసినా, ఆఖరుకి ఇంట్లో వాదన చేసినా తర్కాన్ని నమ్ముకుంటాం. “కారు తాళాలు కనిపించడం లేదు,” అని మా ఆవిడ అంటే, “కోటు జేబులో చూశావా?” అని నేను అడుగుతాను. ఆ సంభాషణ తార్కిక సూత్రం మీద ఆధారపడి ఉన్నదే. సంఖ్యా గణితంలో చిన్న తరగతుల నుండే ఎన్నో సిద్ధాంతాలు నిరూపిస్తాం. ఆ నిరూపణలు పూర్తిగా తర్కం మీదనే ఆధారపడినవా కాదా అన్నది ఫ్రేగె పరిశీలించదలచుకున్నాడు.

అందుకు వేరే కొత్త భాష ఎందుకు వాడటం, మన మామూలు భాష వాడొచ్చు గదా అన్న అనుమానం రావచ్చు. మన భాషలో నిరూపణకి సంబంధించనవి చాలా ఉన్నాయి, వ్యక్తీకరణలో చాలా చోట్ల నిర్దుష్టత ఉండదు. ఈ లోపాలు రాకుండా కొత్త భాషని, మన భావాలని ఉన్నవి ఉన్నట్లుగా నిరలంకారంగా చెప్పడానికి సంకల్పించాడు. ఇదే లైబ్నిజ్ కూడా కోరుకున్నాడు – మన భావాలకి నిర్దుష్టమైన – ప్రతి భావనకీ వేరే సంకేతం ఉండేటట్లుగా – రూపాన్నిస్తే, వాటిని కలిపే నియమాలని కూడా నిర్దేశిస్తే, అప్పుడు మనం వివేచననే యాంత్రికం చెయ్యవచ్చు అని లైబ్నిజ్ భావించాడు.

దీనిని కొంతవరకు బూల్ సాధించాడని పోయిన వ్యాసంలో తెలుసుకున్నాం. కాని బూల్ గణితం లోని సంకేతాలని తర్కానికి వాడాడు. ఫ్రేగె కిది నచ్చలేదు – గణితానికే ఆధారం తర్కం అని నిరూపించదలచుకుంటే గణితం మీద ఆధారపడకూడదు. అంతేకాక కొన్ని ప్రతిపాదనలు బూల్ గణితంలో వ్యక్తీకరించలేము. ఉదాహరణకి, “పరీక్షలో తప్పే వాళ్ళంతా మందబుద్ధులో బద్ధకస్తులో అయి ఉంటారు,” అన్నదానిని బూల్ గణితంతో సూచించలేము. ఫ్రేగె తన ఫార్ములా భాషలో ఈ లోపాలు దొర్లకుండా జాగ్రత్తపడ్డాడు.

గణితంలో ప్రమేయం (function) అన్నది అందరూ చదివే ఉంటారు. ఉదాహరణకి, Square(x) = x ** 2, అన్న దాంట్లో Square అన్నది ప్రమేయం. అది x అన్న సంఖ్యని తీసుకొని దానిని స్క్వేర్ చేసి విలువని తిరుగు ఇస్తుంది. దీనినే ఫ్రేగె తర్కంలో, సంఖ్యలకే కాక, అన్ని రకాల భావనలకీ (concepts) వర్తించేటట్లు చేశాడు. ప్రమేయం విలువ మాత్రం అవును (True), కాదు (False) అనే రెండిట్లో ఒక విలువని మాత్రమే ఇస్తుంది.

ఉదాహరణకి, Human(x) అన్న ప్రమేయం తీసుకోండి. x అన్నది దేనికయినా – మనిషికి, జంతువుకి, నిర్జీవ వస్తువుకి – వర్తిస్తుంది. కాని x మనిషయితే, అవును, లేకపోతే కాదు, అన్న విలువని తిరిగి ఇస్తుంది. అలాగే GirlInClass(x), Smart(x), Pretty(x), Loves(x, y) అన్న ప్రమేయాలు వరుసగా, x క్లాసులో అమ్మాయా? x తెలివయినదా? x అందమైనదా? x y ని ప్రేమిస్తుందా? అన్న భావనలకి రూపాలగా నిర్వచించుకోవచ్చు. వీటిని క్లుప్తంగా, G(x), S(x), P(x), L(x, y) అని రాద్దాం.

మనం వాడుకలో కొన్ని అన్నిటికీ (all), కొన్ని కొన్నిటికీ (some) వర్తించేటట్లు మాట్లాడతాం. ఉదాహరణకి, “క్లాసులో అమ్మాయిలు అందరూ తెలివయిన వాళ్ళు,” అనో, “క్లాసులో అమ్మాయిల్లో కొందరు అందమయిన వాళ్ళు,” అనో అంటాము. ఈ వాక్యాలలో తేడాని ఫ్రేగె సంకేతపరంగా తన భాషలో ప్రవేశపెట్టాడు.

మొదటిదానిని, for all x, if x is a girl in class, x is smart, అనీ, రెండో దానిని, for some x, x is a girl in class and x is pretty, అనీ చదువుకోవచ్చు. వాటినే సంకేతపరంగా, (∀x) (if G(x) then S(x)) అనీ, (∃ x) (G(x) and P(x) ) అనీ రాస్తారు. మొదటిదానిని – (∀ x) అంటే for all x - సార్వత్రిక గుణవాచకమనీ (universal qualifier), రెండోదానిని – (∃ x) అంటే there exists x such that - అస్తిత్వ గుణవాచకమనీ (existential qualifier) పిలుస్తారు. అందుకే తలక్రిందులుగా రాసిన A, తిరగేసిరాసిన E సంకేతాలగా వాడుతారు.

ప్రతిపాదనలని కలపడానికి కూడా రకరకాల సంకేతాలున్నాయి: If … then … అన్నదానిని ⊃ తో, మరియు (and) ని ∧ తో, లేక (or) ని ∨తో, ఖండించడాన్ని (not) ¬ తో సూచిస్తారు. వీటితో, అమ్మాయిల గురించి పై రెండు ప్రతిపాదనలనీ ఇలా క్లుప్తంగా రాయొచ్చు:

(∀ x) (G(x) ⊃ S(x))

(∃ x) ((G(x) ∧ P(x))

బూల్ సూత్రాలతో చూపెట్టలేని, “పరీక్షలో తప్పే వాళ్ళంతా మందబుద్ధులో బద్ధకస్తులో అయి ఉంటారు,” అన్నదానిని ఫ్రేగె భాషలో ఇలా రాయొచ్చు:

(∀ x) (Failed(x) ⊃ (Lazy(x) ∨ ¬ Smart(x)))

దానిని, for all x, if x failed then, x is lazy or x is not smart, అని చదువుకోవచ్చు.

ఒక దాని నుండి మరొకటి రాబట్టే (inference) నియమం ఎలా ఉంటుంది? If A then B అన్నదానితో పాటు A కూడా నిజమయితే, B కూడా నిజమని కచ్చితంగా చెప్పొచ్చు. అంటే A ⊃ B అనీ A అనీ కనిపిస్తే, యాంత్రికంగా B అని చెప్పొచ్చు. వీటిల్లో A, B అన్న ప్రతిపాదనలు ఏవైనా కావొచ్చు – మనుషులకి, లెక్కలకి, కెమిస్ట్రీ కి, దేనికి సంబంధించినవయినా సరే మనం B నిజమని తీర్మానించవచ్చు. ఆధునిక కంప్యూటర్ భాషల్లో (C, C#, Java) రాసిన ప్రోగ్రాములు సరయినవో కాదో తేల్చేది ఇలాంటి రూల్స్ ద్వారానే. ఆ విధంగా చూస్తే మనం ఇవాళ వాడే కంప్యూటర్ భాషలన్నిటికీ మూలం ఫ్రేగె కనిపెట్టిన ఈ ఫార్ములా భాషే!

సంఖ్యల నిజ స్వరూపం (Or, What is a number?)

ఫ్రేగె తర్కాన్ని ఇంత గొప్పగా వృద్ధి చేస్తే, రసెల్ దాంట్లో ఏం తప్పు పట్టాడు? అది తెలుసుకోవాలంటే ముందర అప్పట్లో జ్ఞానమీమాంస (epistemology) మీద ఉన్న సిద్ధాంతాలు కొంచం తెలియాలి. మనకి జ్ఞానం ఎలా కలుగుతున్నది? ఆ జ్ఞానంలో పలురకాలున్నాయా? ఇలాంటి ప్రశ్నలకి సమాధానమిచ్చిన గొప్ప తత్వవేత్త ఇమాన్యుయేల్ కాంట్ (Immanuel Kant).

అనుభూతివాదులు, ఇంద్రియానుభవం ద్వారానే జ్ఞానం కలుగుతుందన్నారు. బుద్ధివాదులు ఇంద్రియానుభవం ద్వారా వచ్చే జ్ఞానంలో సార్వత్రికత (universality), నిశ్చయత (certainty) లేవు, వివేచన (reasoning) ద్వారానే సార్వత్రికమైన శాస్త్రజ్ఞానం కలుగుతుందన్నారు.

కాంట్ ఈ రెండు రకాల జ్ఞానం ఉన్నదని ఒప్పుకుంటూనే, సార్వత్రికమైన శాస్త్రజ్ఞానం అనుభవత్పూర్వమైనది (a priori) అన్నాడు. రెండు రెళ్ళు నాలుగన్నది మన అనుభవానికి వర్తిస్తుంది, నిజమే కాని, అది జ్ఞానాన్ని వాడుకోవడం క్రిందకు వస్తుంది కాని జ్ఞానసముపార్జన క్రిందకు రాదన్నాడు.

దీంట్లో మళ్ళీ రెండు రకాల జ్ఞానం ఉన్నదన్నాడు కాంట్ – వైశ్లేషికం (analytic), సంశ్లేషికం (synthetic). విశ్లేషించడం అంటే విడదీయడం. “వృత్తం గుండ్రంగా ఉంటుంది,” అన్న ప్రతిపాదన వృత్తం అర్థాన్ని విశ్లేషిస్తున్నది. దీనివలన మనకి కొత్తగా కలిగిన జ్ఞానం ఏమీ లేదు. సంశ్లేషించడం అంటే ప్రతిపాదనలని కలిపి కొత్త జ్ఞానాన్ని తెలియజెయ్యడం. “ఈ త్రిభుజం సమకోణ త్రిభుజం,” అన్నది సంశ్లేషికమైన ప్రతిపాదన – త్రిభుజాన్ని గురించి కొత్త సమాచారం ఇస్తున్నది. కాని ఆ త్రిభుజం రూపం మనకి ఇంద్రియానుభవం ద్వారా తెలిసి ఉండాలి. అలాంటి జ్ఞానం సార్వత్రికం కాదు.

“త్రిభుజంలో మూడు కోణాలూ కలిపితే 180 డిగ్రీలకి దాటదు,” అన్న ప్రతిపాదన సార్వత్రికమైనది – అన్ని త్రిభుజాలకీ వర్తిస్తుంది, నిశ్చయమైనది. ఇది సంశ్లేషికమైనదే కాని దీనిని అనుభవం ద్వారా తెలుసుకోలేము. అనుభవత్పూర్వమే కలుగుతుంది. ఇలా అనుభవత్పూర్వ సంశ్లేషికమైనదే శాస్త్రజ్ఞానం అన్నాడు కాంట్. గణితశాస్త్రజ్ఞానమంతా దీని క్రిందకే వస్తుందన్నాడు. అనుభవత్పూర్వమే ఎలా కలుగుతుందాంటే సహజజ్ఞానం (intuition) వలన అన్నాడు.

మనం చిన్నప్పుడు రేఖా గణితంలో ఎన్నో సిద్ధాంతాలు నిరూపించే వాళ్ళం. వీటన్నిటికీ మూలం, రెండు వేల ఏళ్ళకి పైనే యూక్లిడ్ నిర్వచించిన అయిదు — అయిదంటే అయిదు — స్వయంసిద్ధ సూత్రాలు (axioms). స్వయంసిద్ధమంటే వాటికి వేరే నిరూపణ అక్కర్లేదు. అవి నిజమని మనకి తెలుసు. ఉదాహరణకి, ఏ రెండు బిందువులయినయినా ఓ సరళరేఖతో కలపొచ్చు అన్నది ఒక స్వయంసిద్ధ సూత్రం. ఆ అయిదు సూత్రాలతో మొదలెట్టి ఓ కొత్త సిద్ధాంతాన్ని నిరూపించవచ్చు. ఆ సూత్రాలూ, ఈ సిద్ధాంతమూ ఆధారంగా మరో కొత్త సిద్ధాంతం నిరూపించవచ్చు. ఆ విధంగా ఎన్నో వేల సిద్ధాంతాలు రేఖాగణితంలో కొన్ని వందల సంవత్సరాలుగా కనుక్కున్నారు.

మరి సంఖ్యాగణితానికి కూడా అలాంటి స్వయంసిద్ధ సూత్రాలున్నాయా? ఉంటే అవి ఏమిటి? “రెండు రెళ్ళు నాలుగన్నందుకు గూండాలు గండ్రాళ్ళు విసిరే సీమలో,” అంటూ శ్రీశ్రీ ఏదో గీతం రాశాడు. ఫ్రేగె, రెండు రెళ్ళు నాలుగెందుకో నిరూపించమని గణితశాస్త్రజ్ఞులని సవాల్ చేశాడు! మనకే కాదు, అప్పట్లో పెద్ద పెద్ద పండితులంతా పిచ్చిప్రశ్నలేస్తున్నాడని ఫ్రేగె ని ముందర పట్టించుకోలేదు. కాని, ఫ్రేగె వదల్లేదు, “కూడికల దాకా ఎందుకు అసలు సంఖ్య ఒకటి అంటే ఏమిటో చెప్పండి,” అని నిలేశాడు.

కాంట్ సిద్ధాంతం ప్రకారం, 7 + 5 = 12 అన్నది మనకి సహజ జ్ఞానం (intuition) వలన కలుగుతుంది. ఫ్రేగె అందుకు ఒప్పుకోలేదు. 13795 + 11729 = 25524 అన్నది ఇంట్యూషన్ ద్వారా అంటే ఎవరూ నమ్మరు కదా! సంఖ్యాగణితం (arithmetic) అనుభవత్పూర్వ విశ్లేషణ ద్వారా కలుగుతుందని ఫ్రేగె ప్రతిపాదించాడు. సంఖ్యాగణితం రేఖాగణితం కంటె సార్వత్రికమైనదనీ దానిలోని సిద్ధాంతాలన్నీ కొన్ని స్వయంసిద్ధ సూత్రాల ద్వారా నిరూపించవచ్చనీ భావించాడు.

ఈ సూత్రాలు కేవలం వివేచన మీద ఆధారపడి ఉండాలి, మనం వాటిని నిరూపణ లేకుండా ఆమోదించగలిగేలా ఉండాలి. మరయితే అసలు సంఖ్య అంటే ఏమిటో నిర్వచించాలి.

సంఖ్య అన్నది వస్తువుకి సంబంధించి కాదన్నాడు ఫ్రేగె – నాలుగు గుమ్మడికాయలు, నలుగురు కొడుకులు, నాలుగు కవితలు – ఇలా సంఖ్య అన్నది అన్నిటికీ వాడుతుంటాం కదా. మరి దానినెలా నిర్వచించాలి? అదొక భావన (concept) అన్నాడు. ఎలాంటి భావన అంటే, ముందర ఈ భావనలని గురించి ఆలోచించండి:

దశరథుడి కొడుకులు = {రాముడు, లక్ష్మణుడు, భరతుడు, శత్రుఘ్నుడు}; దిక్కులు = {తూర్పు, పడమర, ఉత్తరం, దక్షిణం}; వేదాలు = {ఋగ్వేదం, యజుర్వేదం, సామవేదం, అథర్వవేదం}; మనరాష్ట్రంలోని పెద్ద నదులు = {కృష్ణ, గోదావరి, తుంగభద్ర, పెన్న}; పసిపాప అన్న మాటలో ఉన్న అక్షరాలు = {ప, సి, పా, ప}.

ఒక్కోదాన్ని ఒక సమితి (set) అందాం. ఈ సమితులకన్నిటికీ ఉన్న గుణం ఏమిటి? ప్రతి దాంట్లోనూ నలుగురు సభ్యులున్నారు. వీటిల్లో ఏ రెండు సమితులని తీసుకున్నా, మీకు కూడికలొచ్చినా రాకపోయినా, పండితులయినా కాకపోయినా, వాటిల్లోని సభ్యుల సంఖ్య సమానమని చెప్పగలరు. ఎలా? ఉదాహరణకి మొదటిదాని లోని సభ్యులని చివరదాని సభ్యులతో ఇలా జత చేసి వాటిల్లో సమమైన సభ్యులున్నారని చెప్పొచ్చు: రాముడు -> ప, లక్ష్మణుడు -> సి, భరతుడు -> పా, శత్రుఘ్నుడు -> ప.

విశ్వంలో – వస్తు ప్రపంచం కాన్నివ్వండి, భావ ప్రపంచం కానివ్వండి – నలుగురు సభ్యులున్న సమితులనన్నిటినీ ఊహించుకోండి. ఆ సమితుల సమితిని (set of sets) నాలుగోతనంగా భావించవచ్చు. కాని నాలుగుని, నలుగురు సభ్యులున్న సమితులగా నిర్వచించడం కుదరదు. నాలుగుని నిర్వచించడానికే కదా ఈ తంటా అంతా, నలుగురు అంటే ఏదో నిర్వచించాల్సి ఉంటుంది! నిజమే. కాని సంఖ్యలని నిర్వచించడానికి సమితులని వాడుకున్న తీరుని వివరించడానికి చెప్పాను.

ఫ్రేగె ముందుగా సున్నాని నిర్వచించాడు – సంఖ్యలతో ప్రమేయం లేకుండా, అప్పుడు ఒకటిని సున్నా ఆధారంగా నిర్వచించాడు. అప్పుడు ఏ సంఖ్య నయినా (N అందాం) దాని ముందర వచ్చే సంఖ్యల (0 నుండి N-1) ఆధారంగా నిర్వచించాడు. ఈ వివరాలు వ్యాసం చివర ఇచ్చిన పుస్తకాలలో చదివితే ఫ్రేగె జీనియస్ తెలుస్తుంది.

ఆ విధంగా సంఖ్యని నిర్వచించి, సంఖ్యాగణితం అంతా తర్కం నుండే ఉద్భవిస్తుందని నిరూపించదలచుకున్నాడు. కాని ఈ సమితుల సమితులలో ఓ అంతర్గత వైరుధ్యం (hidden contradiction) దాక్కొని ఉన్నదనీ, అది తన ప్రాజెక్టుకి గొడ్డలిపెట్టు అనీ గ్రహించలేకపోయాడు.

ఇంకా ఉంది. పేజీలు: 1 2 3 4 5