qq_31409913
真实萌新
采纳率0%
2019-04-14 15:58 阅读 250

F#萌新 这几个题目完全不会啊

5

第一个问题 完成这个编程

同时不使用不使用Discriminated Union数据类型,只使用列表类型如何完成
都完成可加15c币

我明明还有一个提问怎么不见了

module AR

type Prop =
    | And of Prop * Prop
    | Implies of Prop * Prop
    | Or of Prop * Prop
    | Not of Prop
    | False
    | True
    | Fact of string
let (<=>) p q = And(Implies(p, q),Implies(q, p))
let (=>) p q = Implies(p, q)
let Jones_ill = Fact("Jones is ill." )
let Smith_away = Fact("Smith is away." )
let Directors_dividend = Fact("Directors declare a dividend." )
let Robinson_back = Fact("Robinson comes to his senses "+
                         "and takes matters into his own hands.")
let Patterson_come = Fact("Patterson comes." )
let Townsend_away = Fact("Townsend is away." )

let Facts = [Jones_ill;
             Smith_away;
             ]

let Program = [
             And(And(Jones_ill,Smith_away),Robinson_back) 
                => Directors_dividend;
             Patterson_come  => Robinson_back;
             Jones_ill =>  Patterson_come;
             Townsend_away  => Robinson_back;
             Smith_away => Townsend_away
            ]

let Goal = [ Directors_dividend => False ]

let rec SLD_resolution glist goal program facts =  
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

相关推荐