Horn  clause

 

......... ÀÏÂ÷³í¸® (First-order Predicate Calculus) ¿¡¼­ »ç¿ëµÇ´Â ³í¸®½Ä Áß¿¡¼­ Horn Àý À̶ó°í ºÒ¸®¿ì´Â Ư¼öÇÑ ÇüÅÂÀÇ ÀýÀÌ ÀÖ´Ù. Horn Àý Àº ÇÑ °³ ÀÌÇÏÀÇ ±àÁ¤Àû ³í¸®±¸ (Positive Literal) ¸¸À» °®´Â ÀýÀ» ÀǹÌÇϴµ¥, ±àÁ¤Àû ³í¸®±¸ (Literal) ´Â ºÎÁ¤ºÎÈ£°¡ ¾ø´Â ³í¸®±¸ ¸¦ ÀǹÌÇÑ´Ù. ¿¹¸¦ µé¸é P, ¬P¡ýQ, P¢¡Q ´Â ¸ðµÎ Horn Àý ÀÇ ÇüŸ¦ °®°í ÀÖ´Ù. P¢¡Q ¹®ÀåÀº µÎ °³ÀÇ ±àÁ¤Àû ³í¸®±¸¸¦ °®°í ÀÖ´Â ÇüÅÂÀÎ °Íó·³ º¸À̳ª, Àý ÇüÅ·Πº¯È¯ÇÒ °æ¿ì¿¡´Â ¬P¡ýQ °¡ µÇ¹Ç·Î Horn ÀýÀÌ µÊÀ» ¾Ë ¼ö ÀÖ´Ù. PROLOG ¿¡¼­ »ç¿ëµÇ´Â ¹®ÀåÀº ¸ðµÎ HornÀý ÇüŸ¦ °®°í ÀÖ´Ù ............

³í¸®ÇРƯÈ÷ ¸íÁ¦³í¸® (Propositional Calculus) ¿¡¼­ Horn clause ´Â ´ÙÀ½°ú °°Àº ÀϹÝÀû ÇüŸ¦ °¡Áø ¸íÁ¦ÀÌ´Ù

(p and q and ... and t) implies u  ........   p and q and ... and t ¶ó¸é u ÀÌ´Ù.

¿©±â¼­ and ·Î °áÇÕµÈ ¸íÁ¦ÀÇ °¹¼ö´Â °¢ÀÚ°¡ ÁÁ¾ÆÇÏ´Â ´ë·ÎÀ̸ç zero Àϼöµµ ÀÖ´Ù. ÀÌ·¯ÇÑ ÇüÅ´ º¸ÅëÀÇ ÀüÅëÀûÀÎ ³í¸®ÇÐ (Logic) ³»¿¡¼­ ´Ù½Ã Ç¥ÇöµÉ¼ö ÀÖ´Ù. ¼±¾ð¸íÁ¦ (disjunction) ·Î¼­ ³í¸®Àû Á¶°Ç (logical condition) ÀÇ º¸ÅëÀÇ Ç¥ÇöÀº ´ÙÀ½°ú µ¿µîÇÑ °æ¿ìÀÌ´Ù.

p implies u  ............. p À̸é u ÀÌ´Ù (Á¶°Ç¸íÁ¦ (Implication))

´Â ´ÙÀ½°ú °°ÀÌ Ç¥ÇöµÈ´Ù.

(not p) or u. ..............  'p À̸é u ÀÌ´Ù' ¸¦ ³í¸®½ÄÀ¸·Î Ç¥ÇöÇÑ °Í

ÀÌ°ÍÀº ´ÙÀ½°ú °°Àº ÀϹÝÀûÀÎ Horn clause Ç¥Çö°ú µ¿µîÇÑ°ÍÀ¸·Î ÀϹÝÈ­µÈ´Ù.

(not p) or ... or (not t) or u.

ÀÌ·¯ÇÑ ÇüÅ´ Horn clause ÀÌ ¿¬¾ð¸íÁ¦ÀÇ ÀϹÝÀûÇüÅ (conjunctive normal form) ÀÇ ºÎºÐÁýÇÕÀ̶ó´Â °ÍÀ» º¸¿©ÁØ´Ù. Áï conjunctive normal form ¿¡¼­´Â ¿ë¾îÁßÀÇ ÇÑ°³¸¸ ±àÀûÀû³í¸®±¸ (positive literal) ÀÌ¸ç ³ª¸ÓÁö´Â ºÎÁ¤ (negated) ÀÌ´Ù. Horn clause µéÀº ³í¸®ÇÁ·Î±×·¡¹Ö (logic programming) ¿¡¼­ ±âÃÊÀûÀÎ ¿ªÇÒÀ» ÇÏ¸ç ±¸Á¶Àû³í¸® (constructive logic) ¿¡¼­µµ Áß¿äÇÏ´Ù.

first-order resolution ¿¡ ÀÇÇÑ Á¤¸®Áõ¸í (Theorem Proving)  ¿¡ Horn clauses ÀÌ Å¸´çÇÑ °ÍÀº µÎ°³ÀÇ Horn clauses ÀÇ resolution ÀÌ ÇϳªÀÇ Horn clause À̶ó´Â °ÍÀÌ´Ù. ÀÚµ¿Á¤¸®Áõ¸í (automated theorem proving) ¿¡¼­ ÀÌ°ÍÀº ÄÄÇ»ÅÍ¿¡¼­ ±× Àý (clauses) µéÀ» Ç¥ÇöÇÒ¶§ Å©°Ô È¿À²ÀûÀÌ µÉ¼öÀÖ´Ù´Â °ÍÀÌ´Ù. »ç½Ç PROLOG ´Â ÀüÀûÀ¸·Î Horn clauses ·Î ¸¸µé¾îÁø ÇÁ·Î±×·¡¹Ö ¾ð¾îÀÌ´Ù.

Horn clauses Àº °è»êº¹Àâµµ (Computational Complexity) ¿¡¼­ ¸Å¿ì Áß¿äÇѵ¥, ±×°ÍÀº conjunction of Horn clauses À» ÂüÀ¸·Î ¸¸µå´Â ´Ù¾çÇÑ º¯¼öÇÒ´çÀÇ ÁýÇÕÀ» ã´Â ¹®Á¦´Â P-complete problem À̱⠶§¹®À̸ç, ±×·¯ÇÑ ¹®Á¦´Â ¶§¶§·Î HORNSAT ¶ó°í ºÒ¸°´Ù. ÀÌ°ÍÀº Áß½ÉÀÌ µÇ´Â ºñ°áÁ¤ ¿ÏÀü (NP-complete) ¹®Á¦·Î ¾Ë·ÁÁø boolean satisfiability problem ÀÇ P ¹öÀüÀÌ´Ù.

Horn clause ¶ó´Â À̸§Àº 1951 ³â ±× ÀýÀÇ Á߿伺À» ÃÖÃÊ·Î ÁöÀûÇس½ ³í¸®ÇÐÀÚ Alfred Horn ÀÇ À̸§¿¡¼­ µû¿Â°ÍÀÌ´Ù ............. (Wikipedia : Horn clause)

term :

PROLOG   ³í¸®ÇÐ (Logic)   ¸íÁ¦³í¸® (Propositional Logic)   ¿¬°á»ç (Connective)   ¼ú¾î³í¸® (Predicate Logic)   ±âÈ£ ³í¸®ÇÐ (Symbolic Logic)   ÀÏÂ÷³í¸® (First-order Predicate Calculus)   Àü¹®°¡½Ã½ºÅÛ (Expert System)    °è»êº¹Àâµµ ÀÌ·Ð (Computational Complexity Theory)   Á¤¸®Áõ¸í (Theorem Proving)   Á¶°Ç¸íÁ¦ (Implication)   ºñ°áÁ¤ ¿ÏÀü (NP-complete)   Horn Àý (Horn clause)

paper :

On sentences which are true of direct unions of algebras : Alfred Horn, Journal of Symbolic Logic, 1951