Vadalog
ভাদালোগ সিস্টেম হল একটি নলেজ গ্রাফ ম্যানেজমেন্ট সিস্টেম (কেজিএমএস) যা জ্ঞান গ্রাফের উপর জটিল যুক্তি যুক্তির কাজ সম্পাদনের জন্য একটি ভাষা প্রদান করে। একই সময়ে, ভাদালোগ তথ্য বিজ্ঞানের কাজগুলির পুরো বর্ণালীকে সমর্থন করার জন্য একটি প্ল্যাটফর্ম সরবরাহ করেঃ ডেটা ইন্টিগ্রেশন, প্রাক-প্রক্রিয়াকরণ, পরিসংখ্যানগত বিশ্লেষণ, মেশিন লার্নিং, অ্যালগরিদমিক মডেলিং, সম্ভাব্য যুক্তি এবং সাময়িক যুক্তি। এর ভাষা নিয়ম-ভিত্তিক ভাষা ডেটালগ, ওয়ার্ডড ডেটালগ ±, একটি আক্রমণাত্মক সমাপ্তি নিয়ন্ত্রণ কৌশল ব্যবহার করে একটি উচ্চ-কার্যকারিতা ভাষার সম্প্রসারণের উপর ভিত্তি করে। ভাদালোগ তথ্য বিজ্ঞানের কার্যক্রম এবং সরঞ্জামগুলির সম্পূর্ণ বর্ণালীকে সমর্থন করতে পারে। সিস্টেমটি পোস্টগ্রেএসকিউএল এবং মাইএসকিউএল-এর মতো রিলেশনাল ডেটাবেস থেকে নিও4জে-এর মতো গ্রাফ ডেটাবেস পর্যন্ত একাধিক উৎস থেকে পড়তে এবং সংযুক্ত করতে পারে, পাশাপাশি মেশিন লার্নিং সরঞ্জাম (যেমন, ওয়েকা এবং স্কিকিট-লার্ন) এবং একটি ওয়েব ডেটা এক্সট্রাকশন টুল, ওএক্সপাথ ব্যবহার করতে পারে। অতিরিক্ত পাইথন লাইব্রেরি এবং এক্সটেনশনগুলিও সহজেই সিস্টেমে সংহত করা যেতে পারে। ভাদালগ অক্সফোর্ড বিশ্ববিদ্যালয়, টেকনিশে ইউনিভার্সিটাট ভিয়েনের নলেজ গ্রাফ ল্যাব এবং ব্যাংক অফ ইতালির মধ্যে একটি যৌথ প্রচেষ্টার ফলাফল। নলেজ গ্রাফ ম্যানেজমেন্ট সিস্টেম (কে. জি. এম. এস) একটি নলেজ গ্রাফ ম্যানেজমেন্ট সিস্টেম (কে. জি. এম. এস)-কে জ্ঞান গ্রাফ পরিচালনা করতে হয়, যা তথ্য এবং সম্পর্কের আকারে প্রচুর পরিমাণে তথ্য অন্তর্ভুক্ত করে। সাধারণভাবে, এটিকে তিনটি উপাদানের সংমিশ্রণ হিসাবে দেখা যেতে পারেঃ কেবিএমএস, অর্থাৎ একটি নলেজ বেস ম্যানেজমেন্ট সিস্টেম, বিগ ডেটা, যা প্রচুর পরিমাণে ডেটা পরিচালনা করার প্রয়োজন, বিশেষত যখন বিবেচনা করা হয় যে জ্ঞান গ্রাফগুলিকে একাধিক ডেটা উত্স, কর্পোরেট এবং পাবলিক জ্ঞান উভয়কেই সংহত করার সমাধান হিসাবে বিবেচনা করা হয়েছে, যা বড় জ্ঞান গ্রাফের মধ্যে সংহত করা যেতে পারে, (ডেটা) অ্যানালিটিক্স হল মেশিন লার্নিং, টেক্সট মাইনিং, ডেটা অ্যানালিটিক্স এবং ডেটা ভিজ্যুয়ালাইজেশনের জন্য বিদ্যমান সফ্টওয়্যার প্যাকেজগুলিতে অ্যাক্সেস সরবরাহ করা এবং তাদের একই প্ল্যাটফর্মে একত্রিত করার প্রয়োজন। আরও প্রযুক্তিগত দৃষ্টিকোণ থেকে, একটি যথাযথ কেজিএমএস সংজ্ঞায়িত করার জন্য কিছু অতিরিক্ত প্রয়োজনীয়তা চিহ্নিত করা যেতে পারেঃ একটি ভাষার সংজ্ঞা এবং উচ্চ অভিব্যক্তিপূর্ণ শক্তি সহ একটি আনুষ্ঠানিকতা, খরচ-কার্যকর ডেটা দ্বন্দ্ব, তার সমস্ত পদক্ষেপে, ডেটা পরিষ্কার করা থেকে শুরু করে ওয়েব ডেটা নিষ্কাশন এবং বিভিন্ন উত্স থেকে বড় ডেটা অ্যাক্সেস, দক্ষ যৌক্তিক, সম্ভাব্য এবং সত্তাতাত্ত্বিক যুক্তি, কম জটিলতা, উভয় ক্ষেত্রেই স্থান জটিলতা (বড় ডেটা পরিচালনা করতে) এবং সিনট্যাক্স, ইন্টারফেস (এপিআই) অনেক বৈচিত্র্যময় ডেটা উত্স অ্যাক্সেস করার জন্য, যেমন কর্পোরেট আরডিবিএমএস, নোএসকিউএল বা আরডিএফ স্টোর, ওয়েব, মেশিন-লার্নিং এবং বিশ্লেষণ প্যাকেজ। অন্যান্য প্রয়োজনীয়তাগুলির মধ্যে আরও সাধারণ ডিবিএমএস ফাংশন এবং পরিষেবাগুলি অন্তর্ভুক্ত থাকতে পারে, যেমন কোড দ্বারা প্রস্তাবিত। ভাদালোগ সিস্টেম ভাদালোগ এমন একটি প্ল্যাটফর্ম প্রদান করে যা উপরে তালিকাভুক্ত একটি কেজিএমএস-এর সমস্ত প্রয়োজনীয়তা পূরণ করে। এটি জ্ঞান গ্রাফের উপরে নিয়ম-ভিত্তিক যুক্তির কাজ সম্পাদন করতে সক্ষম এবং এটি ডেটা ভিজ্যুয়ালাইজেশন এবং মেশিন লার্নিংয়ের মতো ডেটা সায়েন্সের কর্মপ্রবাহকেও সমর্থন করে। যুক্তি কাজ এবং পুনরাবৃত্তি একটি নিয়ম হল এই রূপের একটি অভিব্যক্তিঃ-যেখানেঃ বস্তুর পরমাণু, হল মাথার পরমাণু। একটি নিয়ম শরীরের ভেরিয়েবলগুলি থেকে শুরু করে নতুন জ্ঞান অনুমান করার অনুমতি দেয়ঃ যখন কোনও নিয়মের মূল অংশের সমস্ত ভেরিয়েবল সফলভাবে বরাদ্দ করা হয়, তখন নিয়মটি সক্রিয় হয় এবং এর ফলে হেড প্রেডিকেটের উৎপত্তি হয়ঃ একটি ডাটাবেস এবং নিয়মের একটি সেট দেওয়া হয়, একটি যুক্তি কাজের লক্ষ্য নতুন জ্ঞান অনুমান করা, ডেটাবেসে সেটের নিয়মগুলি প্রয়োগ করা (এক্সটেনশনাল জ্ঞান)। গত কয়েক দশক ধরে গৃহীত জ্ঞানের সর্বাধিক বিস্তৃত রূপটি নিয়মের আকারে রয়েছে, তা সে নিয়ম-ভিত্তিক ব্যবস্থা, সত্তাতত্ত্ব-ভিত্তিক ব্যবস্থা বা অন্যান্য রূপই হোক না কেন এবং এটি সাধারণত জ্ঞান গ্রাফগুলিতে ধরা যেতে পারে। জ্ঞান গ্রাফের প্রকৃতিও এই নিয়মগুলিতে পুনরাবৃত্তির উপস্থিতিকে একটি বিশেষ গুরুত্বপূর্ণ দিক করে তোলে। পুনরাবৃত্তির অর্থ হল যুক্তি কাজের চূড়ান্ত উত্তর পাওয়ার আগে একই নিয়মগুলি একাধিকবার বলা যেতে পারে এবং এটি বিশেষভাবে শক্তিশালী কারণ এটি পূর্বে অনুমান করা ফলাফলের উপর ভিত্তি করে একটি অনুমানের অনুমতি দেয়। এর অর্থ হল, ব্যবস্থাটিকে অবশ্যই এমন একটি কৌশল প্রদান করতে হবে যা সমাপ্তির নিশ্চয়তা দেয়। আরও প্রযুক্তিগতভাবে, একটি প্রোগ্রাম পুনরাবৃত্তিমূলক হয় যদি নিয়ম প্রয়োগের সাথে নির্মিত নির্ভরতা গ্রাফটি চক্রাকার হয়। পুনরাবৃত্তির সবচেয়ে সহজ রূপ হল যেটিতে একটি নিয়মের প্রধানও শরীরে উপস্থিত হয় (স্ব-পুনরাবৃত্তিমূলক নিয়ম)। প্রশ্ন ভাষা ভাদালোগ ভাষা যুক্তিসঙ্গত প্রশ্নের উত্তর দেওয়ার অনুমতি দেয় যার মধ্যে পুনরাবৃত্তিও অন্তর্ভুক্ত থাকে। এটি ওয়ার্ডড ডেটালগ ±-এর উপর ভিত্তি করে, যা ভাষাগুলির ডেটালগ ± পরিবারের অন্তর্গত যা নিয়মের শীর্ষে অস্তিত্বগত পরিমাণের সাথে ডেটালগকে প্রসারিত করে এবং একই সাথে নির্ণয়যোগ্যতা এবং ট্র্যাক্টেবিলিটি অর্জনের জন্য এর বাক্যবিন্যাসকে সীমাবদ্ধ করে। অস্তিত্বগত নিয়মগুলি টুপল-জেনারেটিং ডিপেন্ডেন্সি (টি. জি. ডি. এস) নামেও পরিচিত। একটি অস্তিত্বগত নিয়মের নিম্নলিখিত রূপ রয়েছেঃ অথবা, বিকল্পভাবে, ডেটালগ বাক্যবিন্যাসে, এটি নিম্নরূপ লেখা যেতে পারেঃ পি (এক্স, জেড):-আর (এক্স)। ভাদালগের ভেরিয়েবলগুলি প্রথম-ক্রম যুক্তিতে ভেরিয়েবলের মতো এবং একটি ভেরিয়েবল যে নিয়মে এটি ঘটে তার স্থানীয়। এর অর্থ হল বিভিন্ন নিয়মে একই পরিবর্তনশীল নামের ঘটনাগুলি বিভিন্ন পরিবর্তনশীলকে বোঝায়। ± নিয়মাবলীর একটি সেটের ক্ষেত্রে, যা নিম্নলিখিতগুলি নিয়ে গঠিতঃ r (X, Y):-p (X)। পি (জেড):-আর (এক্স, জেড)। দ্বিতীয় নিয়মে পরিবর্তনশীল জেডকে বিপজ্জনক বলা হয়, যেহেতু প্রথম নিয়মটি পরমাণু আর-এর দ্বিতীয় মেয়াদে একটি নাল তৈরি করবে এবং এটি পরমাণু পি পাওয়ার জন্য দ্বিতীয় নিয়মে ইনজেকশন দেওয়া হবে, যার ফলে প্রোগ্রামের উত্তর খুঁজে বের করার চেষ্টা করার সময় নালের বিস্তার ঘটবে। যদি নির্বিচারে প্রচারের অনুমতি দেওয়া হয়, যুক্তি অনিবার্য এবং কর্মসূচী অসীম হবে। ওয়ার্ডড ডেটালগ ± এই সমস্যাটি অতিক্রম করে জিজ্ঞাসা করে যে একটি সেটে সংজ্ঞায়িত প্রতিটি নিয়মের জন্য, নিয়ম সংস্থাগুলির সমস্ত চলক অবশ্যই মাথার কমপক্ষে একটি পরমাণুতে সহাবস্থান করতে হবে, যাকে ওয়ার্ড বলা হয়। সতর্কতার ধারণাটি একটি প্রোগ্রামের ভিতরে বিপজ্জনক পরিবর্তনশীল ব্যবহার করার উপায়কে সীমাবদ্ধ করে। যদিও এটি অভিব্যক্তিমূলক শক্তির ক্ষেত্রে একটি সীমাবদ্ধতা, এই প্রয়োজনীয়তার সাথে এবং এর স্থাপত্য এবং সমাপ্তি অ্যালগরিদমগুলির জন্য ধন্যবাদ, ওয়ার্ডড ডেটালগ ± একটি সীমিত সংখ্যক ধাপে একটি প্রোগ্রামের উত্তর খুঁজে পেতে সক্ষম। এটি গণনামূলক জটিলতা এবং অভিব্যক্তিমূলক শক্তির মধ্যে একটি ভাল বিনিময়ও প্রদর্শন করে, পিটিআইএমই ডেটা জটিলতা ক্যাপচার করে এবং সত্তাতাত্ত্বিক যুক্তি এবং পুনরাবৃত্তির সাথে প্রোগ্রাম চালানোর সম্ভাবনাকে অনুমতি দেয়। ভাদালগ এক্সটেনশন ভাদালগ তার সম্পূর্ণরূপে ওয়ার্ডড ডেটালগ ±-এর প্রতিলিপি তৈরি করে এবং এটিকে এই ভাষায় অন্তর্ভুক্তির সাথে প্রসারিত করেঃ একঘেয়ে সমষ্টি (ন্যূনতম, সর্বোচ্চ, সমষ্টি, প্রোড, গণনা অপারেটর), স্তরযুক্ত নেতিবাচকতা, বিভিন্ন ডেটা প্রকারের জন্য সমর্থন (স্ট্রিং, পূর্ণসংখ্যা, দ্বিগুণ, তারিখ, বুলিয়ান, সেট, তালিকা, চিহ্নিত নাল), ডেটা উত্স এবং বাহ্যিক গ্রন্থাগারগুলির সাথে কীভাবে যোগাযোগ করা যায় তা সংজ্ঞায়িত করার জন্য সমৃদ্ধ টীকা প্রক্রিয়া। উপরন্তু, দক্ষ গণনার অনুমতি দেওয়ার জন্য সিস্টেমটি একটি অত্যন্ত ইঞ্জিনিয়ারড স্থাপত্য সরবরাহ করে। এটি নিম্নলিখিত দুটি উপায়ে করা হয়। একটি ইন-মেমোরি প্রসেসিং আর্কিটেকচার এবং একটি পুল স্ট্রিম-ভিত্তিক পদ্ধতি গ্রহণ করা, যা মেমরি খরচকে সীমাবদ্ধ করে বা এটিকে অনুমানযোগ্য করে তোলে। একটি আগ্রাসী সমাপ্তি নিয়ন্ত্রণ কৌশল ব্যবহার করে, যা যত তাড়াতাড়ি সম্ভব চেজ-গ্রাফ (উত্তর তৈরি করতে ব্যবহৃত) তৈরি করার সময় নিদর্শন এবং অপ্রয়োজনীয়তা সনাক্ত করে এবং যখন তা ঘটে তখন গণনা বন্ধ করে দেয়। এটি তথ্যের সমরূপতার ধারণার সাথে যুক্ত, যা একটি উত্তর পাওয়ার জন্য প্রয়োজনীয় পদক্ষেপের সংখ্যা হ্রাস করেঃ যদি একটি সত্য h, h-এর সমরূপ হয়, তবে সিস্টেমটি শুধুমাত্র তথ্য h-এর চেজ গ্রাফটি অন্বেষণ করবে। তাই ভাদালগ সিস্টেমটি সত্তাতাত্ত্বিক যুক্তির কাজ সম্পাদন করতে সক্ষম, কারণ এটি ডেটালগ পরিবারের অন্তর্গত। ভাদালোগের যৌক্তিক মূলের সাথে যুক্তি করা ওডব্লিউএল 2 কিউএল এবং এস. পি. এ. আর. কিউ. এল (অস্তিত্বগত পরিমাপক ব্যবহারের মাধ্যমে) এবং গ্রাফ বিশ্লেষণ (পুনরাবৃত্তি এবং সমষ্টির সমর্থনের মাধ্যমে) ধারণ করে। ভাষার ঘোষণামূলক প্রকৃতি কোডটিকে সহজে পড়া এবং পরিচালনাযোগ্য করে তোলে। সত্তাতাত্ত্বিক যুক্তি কাজের উদাহরণ ভাদালোগ নিয়মের নিম্নলিখিত সেটটি বিবেচনা করুনঃ পূর্বপুরুষ (ওয়াই, এক্স):-ব্যক্তি (এক্স)। পূর্বপুরুষ (ওয়াই, জেড):-পূর্বপুরুষ (ওয়াই, এক্স), পিতামাতা (এক্স, জেড)। প্রথম নিয়ম বলে যে প্রতিটি ব্যক্তির জন্য একটি পূর্বপুরুষ রয়েছে। দ্বিতীয় নিয়মে বলা হয়েছে যে, যদি একজন পিতামাতা হন, তবে তিনিও একজন পূর্বপুরুষ। প্রথম নিয়মে পূর্বপুরুষের ভবিষ্যদ্বাণীর প্রথম অবস্থানে অস্তিত্বগত পরিমাণটি লক্ষ্য করুন, যা তাড়া পদ্ধতিতে একটি নাল νi তৈরি করবে। এই ধরনের নাল তারপর দ্বিতীয় নিয়মের শীর্ষে প্রচারিত হয়। একটি ডাটাবেস ডি = {ব্যক্তি (অ্যালিস), ব্যক্তি (বব), অভিভাবক (অ্যালিস, বব)} বিবেচনা করুন যার সাথে বিস্তৃত তথ্য এবং সমস্ত জড়িত পূর্বপুরুষের তথ্য খুঁজে বের করার প্রশ্ন যুক্তিসঙ্গত কাজ হিসাবে বিবেচনা করুন। তাড়া করার পদ্ধতিটি সম্পাদন করার মাধ্যমে, প্রকৃত পূর্বপুরুষ (ν1, অ্যালিস) ব্যক্তির (অ্যালিস) উপর প্রথম নিয়মটি ট্রিগার করে তৈরি করা হয়। তারপর, পূর্বপুরুষ (ν1, বব) পূর্বপুরুষ (ν1, অ্যালিস) এবং পিতামাতার (অ্যালিস, বব) উপর দ্বিতীয় নিয়মটি সক্রিয় করে তৈরি করা হয়। অবশেষে, প্রথম নিয়মটি ব্যক্তির (বব) উপর ট্রিগার করা যেতে পারে, তবে ফলস্বরূপ পূর্বপুরুষ (ν2, বব) পূর্বপুরুষের (ν1, বব) সাথে সমরূপ, সুতরাং এই সত্যটি উত্পন্ন হয় না এবং তাড়া গ্রাফের সংশ্লিষ্ট অংশটি অন্বেষণ করা হয় না। উপসংহারে, প্রশ্নের উত্তর হল তথ্যের সেট {পূর্বপুরুষ (ν1, অ্যালিস), পূর্বপুরুষ (ν1, বব)}। অতিরিক্ত বৈশিষ্ট্য ডেটা সায়েন্স সরঞ্জামগুলির সাথে ভাদালগের সংহতকরণ ডেটা বাইন্ডিং প্রিমিটিভ এবং ফাংশনের মাধ্যমে অর্জন করা হয়। ডেটা বাইন্ডিং প্রিমিটিভসঃ বাইন্ডিং বাহ্যিক ডেটা উৎস বা একটি ডাটাবেস, একটি কাঠামো বা একটি লাইব্রেরির মতো সিস্টেমের সাথে সংযোগ স্থাপনের অনুমতি দেয় এবং সিস্টেমকে তাদের সাথে কীভাবে মোকাবিলা করতে হয় তা বলে। এর মধ্যে রয়েছে পোস্টগ্রেএসকিউএল বা মাইএসকিউএল-এর মতো রিলেশনাল ডাটাবেস সিস্টেম এবং নিও4জে-এর মতো গ্রাফ ডেটাবেসগুলির সঙ্গে সংযোগ। মেশিন লার্নিং লাইব্রেরি (ওয়েকা, স্কিকিট-লার্ন, টেনসরফ্লো) এবং একটি ওয়েব ডেটা এক্সট্রাকশন টুল, ওএক্সপাথকে সংহত করাও সম্ভব, যা সরাসরি ওয়েব থেকে ডেটা পুনরুদ্ধারের অনুমতি দেয়। তথাকথিত টীকাগুলির মাধ্যমে এটি সম্ভবঃ এগুলি বিশেষ তথ্য যা নির্দিষ্ট আচরণের সাথে অস্তিত্বের নিয়মগুলির সেটকে বাড়িয়ে তোলে। @input টীকাটি সিস্টেমকে বলে যে প্রোগ্রামের একটি পরমাণুর জন্য তথ্যগুলি একটি বাহ্যিক তথ্য উৎস থেকে আমদানি করা হয়, যেমন, একটি সম্পর্কিত ডাটাবেস। @output টীকা নির্দিষ্ট করে যে প্রোগ্রামের একটি পরমাণুর তথ্য একটি বাহ্যিক লক্ষ্যে রপ্তানি করা হবে, যেমন, স্ট্যান্ডার্ড আউটপুট বা একটি রিলেশনাল ডাটাবেস। অন্যান্য টীকা যেমন @bind, @mapping, @qbind তথ্য উৎসগুলিকে @input টীকা বা @output টীকাটির লক্ষ্যের জন্য কাস্টমাইজ করার অনুমতি দেয়। ফাংশনঃ 'কাস্টম এক্সপ্রেশন যা গাণিতিক অপারেটর, স্ট্রিং ম্যানিপুলেশন বা তুলনা ব্যবহার করে তাও সমর্থন করা যেতে পারে। পাইথনে লেখা গ্রন্থাগারগুলিও সক্রিয় করা হয়েছে এবং সেগুলিকে ডেডিকেটেড অ্যানোটেশন @library-এর সাথে একীভূত করা যেতে পারে। সিস্টেমটি জুপিটারল্যাব প্ল্যাটফর্মের সাথে একটি সংহতকরণও সরবরাহ করে, যেখানে ভাদালোগ প্রোগ্রামগুলি লেখা এবং চালানো যায় এবং আউটপুটটি পড়া যায়, প্ল্যাটফর্মের কার্যকারিতা কাজে লাগিয়ে। এটি প্রোগ্রামের সঠিকতা মূল্যায়ন করার, এটি চালানোর এবং সিনট্যাক্স হাইলাইটিং, কোড বিশ্লেষণ (কোডটি সঠিক কিনা বা ত্রুটি আছে কিনা তা পরীক্ষা করা) এবং ফলাফলের ব্যাখ্যা (ফলাফলটি কীভাবে প্রাপ্ত হয়েছে) এর মতো সরঞ্জামগুলির মাধ্যমে আউটপুট তথ্যের উৎপত্তি প্রক্রিয়া বিশ্লেষণ করার সম্ভাবনা দেয়ঃ এই সমস্ত কার্যকারিতা নোটবুকে এম্বেড করা হয় এবং ভাদালগ কোড লিখতে এবং বিশ্লেষণ করতে সহায়তা করে। কেসগুলি ব্যবহার করুন পৃথক গবেষণা এবং শিল্প ক্ষেত্র থেকে অনেক বাস্তব-বিশ্বের ব্যবহারের ক্ষেত্রে মোকাবেলা করার জন্য ভাদালোগ সিস্টেমটি নিযুক্ত করা যেতে পারে। পরেরগুলির মধ্যে, এই বিভাগটি আর্থিক ক্ষেত্রের সাথে সম্পর্কিত দুটি প্রাসঙ্গিক এবং অ্যাক্সেসযোগ্য মামলা উপস্থাপন করে। কোম্পানি নিয়ন্ত্রণ একটি কোম্পানির মালিকানা গ্রাফ সত্তাকে নোড এবং শেয়ারকে প্রান্ত হিসাবে দেখায়। যখন কোনও সত্তার অন্য সত্তার উপর একটি নির্দিষ্ট পরিমাণ শেয়ার থাকে (সাধারণত নিরঙ্কুশ সংখ্যাগরিষ্ঠতায় চিহ্নিত), তখন এটি সেই সত্তার উপর সিদ্ধান্ত নেওয়ার ক্ষমতা প্রয়োগ করতে সক্ষম হয় এবং এটি একটি কোম্পানির নিয়ন্ত্রণ এবং আরও সাধারণভাবে, একটি গোষ্ঠী কাঠামোকে কনফিগার করে। সমস্ত নিয়ন্ত্রণ সম্পর্কের অনুসন্ধানের জন্য বিভিন্ন পরিস্থিতি এবং খুব জটিল গোষ্ঠী কাঠামো, যথা প্রত্যক্ষ এবং পরোক্ষ নিয়ন্ত্রণের তদন্ত করা প্রয়োজন। এই প্রশ্নটি নিম্নলিখিত নিয়মে অনুবাদ করা যেতে পারেঃ একটি সংস্থা সরাসরি একটি সংস্থাকে নিয়ন্ত্রণ করে যদি সরাসরি মোট ইক্যুইটির 50 শতাংশের বেশি মালিকানা থাকে, একটি সংস্থা পরোক্ষভাবে একটি সংস্থাকে নিয়ন্ত্রণ করে যদি মধ্যস্থতাকারী সংস্থাগুলির একটি সেট নিয়ন্ত্রণ করে যা যৌথভাবে (অর্থাৎ, তাদের শেয়ারের সমষ্টি) 50 শতাংশের বেশি মালিকানাধীন। এই নিয়মগুলি একটি ভাদালগ প্রোগ্রামে লেখা যেতে পারে যা নিম্নলিখিত সমস্ত নিয়ন্ত্রণ প্রান্তগুলি অর্জন করবেঃ নিয়ন্ত্রণ (এক্স, এক্স):-কোম্পানি (এক্স)। নিয়ন্ত্রণ (X, Y):-নিয়ন্ত্রণ (X, Y), নিজস্ব (Y, Z, W), V = যোগফল (W, <Y>), V> 0.5.The প্রথম নিয়মে বলা হয়েছে যে প্রতিটি সংস্থা নিজেকে নিয়ন্ত্রণ করে। দ্বিতীয় নিয়মটি দ্বারা নিয়ন্ত্রিত সমস্ত সংস্থার উপর কোম্পানিগুলির মালিকানাধীন শেয়ারের সমষ্টি দ্বারা নিয়ন্ত্রণকে সংজ্ঞায়িত করে। একটি কোম্পানির মালিকানার আলেখ্যে দুটি সত্তার মধ্যে কোনও যোগসূত্র রয়েছে কিনা তা নির্ধারণ করার জন্য এই দৃশ্যকল্পটি গঠিত। এই ধরনের সংযোগের অস্তিত্ব নির্ধারণ প্রাসঙ্গিক, উদাহরণস্বরূপ, ব্যাঙ্কিং তত্ত্বাবধান এবং ক্রেডিট যোগ্যতা মূল্যায়নের ক্ষেত্রে, কারণ কোনও সংস্থা অন্য কোনও সংস্থাকে ঋণের জন্য গ্যারান্টার হিসাবে কাজ করতে পারে না যদি উভয়ের মধ্যে এই ধরনের সম্পর্ক থাকে। আনুষ্ঠানিকভাবে, দুটি সংস্থা এবং একটি ঘনিষ্ঠ সংযোগে জড়িত থাকে যদিঃ (রেস.,) প্রত্যক্ষ বা পরোক্ষভাবে (রেস.,) এর 20 শতাংশ বা তার বেশি ইক্যুইটির মালিক হয়, অথবা একটি সাধারণ তৃতীয় পক্ষ প্রত্যক্ষ বা পরোক্ষভাবে 20 শতাংশ বা তার বেশি ইক্যুইটির মালিক হয়। এই নিয়মগুলি একটি ভাদালোগ প্রোগ্রামে লেখা যেতে পারে যা নিম্নলিখিত সমস্ত ঘনিষ্ঠ লিঙ্কের প্রান্তগুলি অর্জন করবেঃ mcl (X, Y, S):-নিজস্ব (X, Y, S)। mcl (X, Z, S1 * S2):-mc1 (X, Y, S1), নিজস্ব (Y, Z, S2)। cl1 (X, Y):-mcl (X, Y, S), TS = sum (S), TS> 0.20. cl2 (X, Y):-cl1 (Z, X), cl1 (Z, Y), X! = Y. ক্লোজলিঙ্ক (X, Y):-cl1 (X, Y)। ক্লোজলিঙ্ক (এক্স, ওয়াই):-সিএল2 (এক্স, ওয়াই)। প্রথম নিয়মে বলা হয়েছে যে দুটি সংস্থা এবং একটি মালিকানা প্রান্ত দ্বারা সংযুক্ত সম্ভাব্য ঘনিষ্ঠ সংযোগ। দ্বিতীয় নিয়মে বলা হয়েছে যে, যদি কোনও শেয়ারের সাথে ঘনিষ্ঠ সংযোগ থাকে এবং শেয়ার সহ কোনও সংস্থার মালিকানা থাকে, তবে শেয়ারের সাথেও ঘনিষ্ঠ সংযোগ থাকতে পারে। তৃতীয় নিয়মে বলা হয়েছে যে, যদি প্রত্যক্ষ বা পরোক্ষভাবে মালিকানাধীন সমস্ত আংশিক শেয়ারের সমষ্টি ইক্যুইটির 20 শতাংশের বেশি বা সমান হয়, তবে প্রথম সংজ্ঞা অনুসারে সেগুলি ঘনিষ্ঠ সংযোগ। চতুর্থ নিয়মটি ঘনিষ্ঠ সংযোগের দ্বিতীয় সংজ্ঞাকে মডেল করে, অর্থাৎ, তৃতীয় পক্ষের ক্ষেত্রে। আরও দেখুন ডেটালগ প্রোলগ ডিবিএমএস শব্দার্থিক ওয়েব নিয়ম ভাষা গ্রাফ ডাটাবেস রেফারেন্স গ্রাফ ডেটাবেস ঘোষণাত্মক প্রোগ্রামিং ভাষা