ভয়নিচ পাণ্ডুলিপিতে ভাষার চিহ্ন সামান্যই
ভয়নিচ পাণ্ডুলিপি প্রায় 240 পাতার একটি বই, রেডিওকার্বন পদ্ধতিতে বয়স নির্ণয় যাকে পঞ্চদশ শতকের গোড়ায় স্থাপন করে। উদ্ভিদ, তারা ও স্নানরত মানুষের ছবি ঘিরে আছে প্রায় 38,000 শব্দ, এমন এক লিপিতে যা আর কোথাও পাওয়া যায় না। কেউ এটি পড়তে পারে না।
এটি দেখতে লেখার মতো: ফাঁক দিয়ে আলাদা করা শব্দ, অনেক বিরল শব্দ, আর চিহ্ন — যাদের বলা হয় গ্লিফ (glyphs) — যেগুলো শব্দের ভেতরে নির্দিষ্ট জায়গায় থাকে। তবু এটি কোনো পরিচিত ভাষার মতো আচরণ করে না। একই শব্দ প্রায়ই পরপর দুই বা তিনবার আসে, অনেক শব্দ তাদের প্রতিবেশী থেকে কেবল একটি গ্লিফে আলাদা, আর বহুল ব্যবহৃত শব্দগুলো ছোট ও একে অপরের মতো।
অর্থহীন লেখা, নাকি ছদ্মবেশী ভাষা?
এক ব্যাখ্যায়, লেখাটির কোনো অর্থ নেই: একজন লিপিকার প্রতিটি নতুন শব্দ লিখেছেন আগের একটি শব্দ নকল করে এবং একটি বা দুটি গ্লিফ বদলে, যে প্রক্রিয়া টিম (Timm) ও শিনার (Schinner) 2020 সালে প্রস্তাব করেছিলেন। অন্য ব্যাখ্যায়, একটি আসল ভাষা লুকিয়ে আছে একটি সংকেতলিপির (cipher) আড়ালে — সাম্প্রতিক একটি নকশা, নাইব্বে (Naibbe) সংকেতলিপি, লাতিন বা ইতালীয়কে পাণ্ডুলিপির লেখার মতোই লেখায় রূপান্তরিত করে।
প্রতিটি পক্ষ দীর্ঘদিন ধরে উদ্দেশ্য অনুযায়ী বেছে নেওয়া পরিসংখ্যান দিয়ে যুক্তি দিয়ে এসেছে। টেক্সাস টেক বিশ্ববিদ্যালয়ের শিন ঝাং (Xin Zhang) ও ভিক্টর এস. শেং (Victor S. Sheng) দুটিকেই একই নিয়মে বিচার করেছেন।
একই পাতা, একই বাজেট, অদেখা পরিসংখ্যান
প্রতিটি ব্যাখ্যা হয়ে উঠেছে একটি প্রোগ্রাম, যা পাণ্ডুলিপির পাতা ও লাইনগুলো শব্দের পর শব্দ ভরে তোলে। নকলের প্রোগ্রামগুলো প্রতিটি শব্দ লেখে নতুন হিসেবে, অথবা আগের একটি শব্দের বদলানো নকল হিসেবে। সংকেতলিপির প্রোগ্রামগুলো একটি আসল মধ্যযুগীয় লেখাকে সংকেতায়িত করে, প্রতিটি শব্দকে, বা তার অক্ষরগুলোকে, তার অক্ষরাংশগুলোকে, অথবা কেবল তার ব্যাকরণগত শ্রেণিকে, একটি সংকেত-শব্দ (code word) দিয়ে প্রতিস্থাপন করে। প্রতিটি সংকেতলিপির সঙ্গে একজন নকলকারী লিপিকারও থাকে, যাতে স্থানীয় পুনরাবৃত্তি কোনো পক্ষকে সুবিধা না দেয়।
প্রতিটি প্রোগ্রামকে লেখার 22টি পরিসংখ্যানে সমন্বয় করা হয়েছে, তারপর বিচার করা হয়েছে এমন 15টি অন্য পরিসংখ্যানে, যা সে কখনো দেখেনি।
- টিম ও শিনারের নকলের নিয়মগুলো সেই অদেখা পরিসংখ্যানগুলোর পূর্বাভাস যেকোনো এক-চাবির সংকেতলিপির চেয়ে অনেক ভালোভাবে দেয়। তাদের সবচেয়ে বড় বিচ্যুতিও পাঁচ আদর্শ বিচ্যুতির (standard deviations; প্রোগ্রামটির নিজের লেখাগুলোর সাধারণ বিস্তার) নিচে থাকে; একটি শব্দ-সংকেত একটিতে একশোরও বেশি দিয়ে লক্ষ্যভ্রষ্ট হয়।
- নির্ণায়ক পরিসংখ্যানটি হলো একটি সরণ। পাণ্ডুলিপিতে দুটি “উপভাষা” আছে, Currier A ও B, যারা গ্লিফ ভিন্নভাবে ব্যবহার করে। একটি স্থির চাবি প্রতিটি পাতায় একই গ্লিফ-অভ্যাস লেখে; যে লিপিকার সদ্য লেখা শব্দ থেকে শব্দ গড়েন, তিনি সেগুলোকে ভেসে বেড়াতে দেন।
- কিন্তু দ্বিতীয় চাবিযুক্ত সংকেতলিপিগুলো — Currier B পাতাগুলোর জন্য একটি আলাদা চাবি — অথবা যেগুলো একটি আসল লেখার কেবল শব্দশ্রেণিগুলো সংকেতায়িত করে, ঠিক ততটাই ভালো করে, এমন একজন লিপিকারের সঙ্গে যিনি প্রায় অর্ধেক শব্দ ভুল নকল করেন। লেখকদের ভাষায়, “যে সংকেতলিপিগুলো সবচেয়ে ভালো খাপ খায়, সেগুলোই তারা, যাদের মূল লেখা সবচেয়ে কম গুরুত্বপূর্ণ” (মূল লেখা মানে সংকেতায়নের আগের আসল লেখা)।
কেবল শব্দের পরিসংখ্যান দিয়ে মীমাংসা হয় না, আর কোনো প্রোগ্রামই একসঙ্গে সব 37টি পরিসংখ্যানের সঙ্গে মেলে না।
যে শব্দগুলো বারবার একই লাইনে দেখা দেয়
তাই লেখকেরা ভাষার এমন একটি চিহ্ন খুঁজেছেন, যার জন্য পাঠোদ্ধারের দরকার নেই। অর্থপূর্ণ লেখায়, যে শব্দগুলো একসঙ্গে যায় — একটি বিশেষ্য ও তার ক্রিয়া, একটি বাঁধা বাক্যাংশের অংশগুলো — সেগুলো দৈবের চেয়ে বেশি বার একই লাইনে থাকে, এবং লেখার অন্য জায়গায় আবারও তা করে। একটি শব্দ-সংকেত এই নকশা রক্ষা করে; একটি পাতায় নকল থেকে জন্মানো জুটির পাতা কয়েক পরে ফিরে আসার কোনো কারণ নেই।
পরীক্ষাটি বইটিকে দুই ভাগে ভাগ করে এবং যাচাই করে, বহুল ব্যবহৃত শব্দের একই জুটিগুলো দুই ভাগেই বারবার একই লাইনে থাকে কি না। অভিন্ন শব্দ এবং একটি গ্লিফের ব্যবধানের শব্দ বাদ রাখা হয়, যাতে নকল সংকেতটির ভান করতে না পারে।
- 16টি ভাষার 28টি লেখা, পাণ্ডুলিপির পাতার বিন্যাসে সাজানো, 0.139 থেকে 0.411 নম্বর পায় (দুই ভাগের মধ্যে একটি সহসম্পর্ক: এক ভাগে পাওয়া জুটিগুলো অন্য ভাগ সম্পর্কে কিছুই না জানালে 0, পুরোপুরি মিলে গেলে 1)।
- পাণ্ডুলিপিটি পায় 0.071, আর দ্বিতীয় একটি স্বাধীন প্রতিবর্ণীকরণে (transliteration; গ্লিফগুলোকে একটি প্রমিত বর্ণমালায় টাইপ করা) 0.053: সবচেয়ে দুর্বল লেখাটির অর্ধেক জোর।
- শব্দ-সংকেতগুলো সেই স্তরে নামে কেবল তখনই, যখন তাদের মূল লেখায় নকশাটি দুর্বল — সবচেয়ে বেশি সংক্ষেপচিহ্নসহ লেখা মধ্যযুগীয় লাতিন, 0.102-এ — অথবা যখন অনেক শব্দ ভুল নকল হয়।
মানাঙ্কন (calibration) গুরুত্বপূর্ণ: স্বেচ্ছাসেবকদের লেখা অর্থহীন লেখাকে আসল গদ্য থেকে আলাদা করতে প্রশিক্ষিত একটি প্রোগ্রাম পাণ্ডুলিপিটিকে অর্থহীন বলে, কিন্তু এটি সংকেতায়িত 54টি অর্থপূর্ণ লেখার 53টিকেও অর্থহীন বলে।
যে সংকেত-ভাঙিয়েদের আগে পরিচিত লেখা পড়তে হয়
প্রতিটি সমাধানকারী এমন চাবি খোঁজে, যার অধীনে লেখাটি একটি নির্দিষ্ট ভাষার মতো সবচেয়ে বেশি পড়া যায়, যা নম্বর দেওয়া হয় একটি সরল পরিসংখ্যানগত সারণি দিয়ে: ওই ভাষার পুরোনো লেখায় কোন অক্ষর, বা শব্দ, সাধারণত কোনটির পরে আসে। প্রতিটিকে প্রথমে চালানো হয়েছে নিয়ন্ত্রণ-লেখায় (control texts), একইভাবে সংকেতায়িত আসল লেখায়; যেখানে এটি সেগুলো পড়তে পারেনি, সেখানে পরীক্ষাটিকে অমীমাংসিত গোনা হয়েছে।
- অক্ষর-সংকেতলিপি। সমাধানকারী 16টি ভাষার 15টির নিয়ন্ত্রণ-লেখা পড়তে পেরেছে। প্রতিটিতে, পাণ্ডুলিপি নিয়ন্ত্রণ-লেখার চেয়ে কম শৃঙ্খলা দেখিয়েছে, আর এর পাঠগুলো ছিল চেনা শব্দহীন অক্ষরের সারি। হিব্রু অমীমাংসিত থেকে গেছে।
- শব্দ-সংকেত। সংক্ষেপিত লাতিনের একটি সংকেতের জন্য, অর্থাৎ সংকেতলিপির প্রোগ্রামগুলো যে মূল লেখা পছন্দ করেছিল, এমন লাতিনের 50 লক্ষ শব্দ থেকে গড়া একটি সারণিও পাণ্ডুলিপির চেয়ে নিয়ন্ত্রণ-লেখায় বেশি শব্দ-শৃঙ্খলা খুঁজে পেয়েছে, যদি না প্রতি পাঁচটি শব্দে দুটি ভুল নকল হয়।
- প্রতিটি অক্ষর বা অক্ষরাংশের জন্য একটি শব্দ। এমন 28টি পদ্ধতি 1,144টি সিদ্ধান্ত দিয়েছে: 596টি বাতিল, 429টি অমীমাংসিত, আর 119টি যা বাতিল করা যায়নি: পাণ্ডুলিপি কোনো বার্তাহীন লেখার চেয়ে সামান্যই ওপরে ছিল, তবু পাঠোদ্ধার করে পাঠযোগ্য কিছুই মেলেনি।
যে সংকেতলিপি ফাঁক গলে যায়
একটি নোমেনক্লেটর (nomenclator), সে যুগে প্রচলিত এক ধরনের সংকেত, সবচেয়ে বেশি ব্যবহৃত শব্দগুলোকে পূর্ণ সংকেত-শব্দ হিসেবে লেখে আর বাকিগুলো অক্ষর ধরে ধরে বানান করে। দ্বিতীয় একটি চাবি এবং শব্দের একটি বড় অংশ ভুল নকলকারী একজন লিপিকারের সঙ্গে (এর সবচেয়ে ভালো দুটি মিলে 37% ও 56%) এটি পাণ্ডুলিপির শব্দ-জুটির সঙ্গে মিলে যায়, আর সমাধানকারীরা 16টি ভাষার 9টিতে একে বাতিল করতে পারে না। লেখা বরাবর চাবি বদলায় এমন সংকেতলিপি একেবারেই পরীক্ষা করা হয়নি।
শব্দের মাঝের একটি জোড়
সবচেয়ে জোরালো যে কাঠামো বাকি থাকে, তা শব্দের সীমানায় বসে। একটি শব্দের শেষ গ্লিফ পরের শব্দের প্রথম গ্লিফকে সীমাবদ্ধ করে: 0.204 বিট পারস্পরিক তথ্য (একটি অন্যটি সম্পর্কে কতটা জানায়), নকলের প্রোগ্রামের 0.078 ও সংকেতলিপিগুলোর 0.014-এর বিপরীতে। অক্ষর-সমাধানকারী যা খুঁজে পেয়েছে, তার বেশিরভাগই এই যোগসূত্র বহন করে। লেখকেরা এর উৎস খুঁজে পান এমন গ্লিফে, যেগুলো পরীক্ষিত ভাষাগুলোর অক্ষরের তুলনায় তাদের প্রতিবেশীর সঙ্গে দ্বিগুণ শক্তভাবে বাঁধা; কোনো প্রোগ্রামই পাণ্ডুলিপির ফাঁকগুলোসহ একসঙ্গে এটি পুনরুৎপাদন করতে পারে না।
ছোট একটি বার্তার জায়গা
লেখকেরা পাণ্ডুলিপির লেখায় 50 থেকে 5,000 অক্ষরের বার্তাও বসিয়ে সেগুলো খুঁজেছেন। কেবল এক ধরনের বার্তা নির্ভরযোগ্যভাবে ধরা পড়ে: প্রতিটি অক্ষর সবসময় একই শব্দ হিসেবে লেখা, শব্দগুলো পাশাপাশি। অনুচ্ছেদগুলোর প্রথম শব্দে লুকানো 500 অক্ষরের এমন প্রতিটি বার্তাই খুঁজে পাওয়া গেছে। পাণ্ডুলিপির কিছুই এমন বার্তার দিকে ইঙ্গিত করে না — কিন্তু প্রতি অক্ষরে একাধিক শব্দ ব্যবহার করা, বা অক্ষরগুলো ফাঁক ফাঁক করে বসানো কোনো বার্তা এখনও সেখানে লুকিয়ে থাকতে পারে।
