Predicate
বিধেয়
Variable-সহ একটা বাক্য যার নিজে থেকে সত্যমান নেই — `P(x) : x জোড়`। Variable-এ মান বসালে proposition হয়।
P(x) নিজে সত্যও নয়, মিথ্যাও নয়। কিন্তু P(4) একটা [[proposition]]।
প্রোগ্রামিং-এর ভাষায়: predicate হলো একটা function যা boolean ফেরত দেয়।
def P(x): return x % 2 == 0 # predicate
P(4) # proposition — এখন সত্যমান আছে
Predicate-এর সাথে সবসময় একটা domain থাকে — x কোথা থেকে
আসতে পারে। Domain না বললে দাবিটা অর্থহীন:
∀x (x² ≥ 0)
বাস্তব সংখ্যায় সত্য, জটিল সংখ্যায় মিথ্যা (i² = −1)।
প্রোগ্রামিং-এ domain মানে type। ∀x লিখলে প্রশ্ন হলো:
int32 না int64? Signed না unsigned? Nullable? Domain ভুল ধরলে
overflow আর null pointer — দুটোই সম্ভব।
Predicate ছাড়া কোনো [[loop-invariant]], কোনো SQL WHERE clause,
কোনো type system-এর নিয়ম লেখাই যায় না।