select_split
so that it always
selects the first element of the list of attributes. What tree is found when
the attributes are in the order [author, thread, length,
where_read]? Does this tree represent a different function than
that found with the more complicated selection mechanism? Explain.
This can be found by changing the definition of select_split to:
The tree can be found by asking:select_split(_, _, [Cond|Rem_Atts], Cond, Rem_Atts).
This tree represents a different function than that in Figure 11.3 of the book as it classifies an example with author=unknown, thread=new, length=long as reads whereas the tree of Figure 11.3 classifies the same example as skips.cilog: ask dtlearn(user_action, [e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15,e16,e17,e18], [author,thread,length,where_read], DT). Answer: dtlearn(user_action, [e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18], [author, thread, length, where_read], if(author = known, if(thread = new, if(length = long, skips, reads), if(length = long, skips, reads)), if(thread = new, reads, skips))).