predicate

Prolog -- symetrical predicates

I have to simulate family tree in prolog. And i have problem of symetrical predicates. Facts: parent(x,y). male(x). female(y). age(x, number). Rules: blood_relation is giving me headache. this is what i have done: blood_relation(X,Y):-ancestor(X,Y). blood_relation(X,Y):-uncle(X,Y);brother(X,Y);sister(X,Y);(mother(Z,Y),sister(X,Z));...

C# String to Expression Tree

This is a simplified version of the original problem. I have a class called Person: public class Person { public string Name { get; set; } public int Age { get; set; } public int Weight { get; set; } public DateTime FavouriteDay { get; set; } } ...and lets say an instance: var bob = new Person(){ Name = "Bob", ...

Find an object in a generic list with Find method

class Cache { int sizeOfCache;//no of RssFeedDocument private List<RssFeedDocument> listOfRssFeedDocument = null; } i want to find a object in this generic list in class based upon RssFeedDocument 's property FeedId. ...

Dynamically building LINQ query using OR operator in VB

I need to build a dynamic linq query with or operators. I have seen PredicateBuilder but that is in C# and my project is in VB. Basically I need to build a WHERE clause similar to this: Where((this = 1 AND that = 2) OR (this = 1 AND that = 4) OR (this = 2 AND that = 4)) but the problem is the number will have to be determined dynami...

Core Data: Query objectIDs in a predicate?

Hi there, I am fetching a set of objects from a Core Data persistent store using a fetch request and a predicate. My current predicate simply checks whether an attribute is >= a certain value. This all works great, except that I want to finally exclude any objects that are currently held in an array. I basically need to be able to excl...

How do I find the index of an undefined string in a List<T>

It's my understanding that if I want to get the ID of an item in a list, I can do this: private static void a() { List<string> list = new List<string> {"Box", "Gate", "Car"}; Predicate<string> predicate = new Predicate<string>(getBoxId); int boxId = list.FindIndex(predicate); } private static bool getBoxId(string item) { ...

How do you filter a collection of objects in a base class based on the type of the sub class created?

I wrote this example to help explain. As you can see I have an object hierarchy. I'd like to modify the GetFeatures() function to only return the features added by constructor of object type I instantiated. For example, BasicModel.GetFeatures(new LuxuryModel()) should only return the features "Leather Seats" and "Sunroof". I don't mind u...

How could predicate pushing on an inline view slow down a query?

I have inherited a somewhat messy query that I am working on refactoring to be performant. During this process, one of the things I did due to personal preference was change all of the ANSI-99 join syntax from the "inner join" and "left outer join" statements to be predicates in the query. I noticed two very strange things that I wou...

Pass an unary predicate to a function in C++

I need a function which stablishes for my class a policy for displaying items. e.g: SetDisplayPolicy(BOOLEAN_PRED_T f) This is assuming BOOLEAN_PRED_T is a function-pointer to some boolean predicate type like: typedef bool (*BOOLEAN_PRED_T) (int); I'm interested only on e.g: display something when the passed predicate is TRUE, do n...

C#: How to make objects "assume" they got overload for operator X?

Hi. Is there a way of forcing the C# compiler to ignore missing operator overloads for objects, and instead handle that check in runtime? I ask because I have a container that has multiple objects that has various attributes of type int, string, ushort and so on. I'm making a search function for that container, and would like to be able...

Need lambda expression OrderBy with DateTime conversion

I am trying to create a lambda expression (Linq, C# 3.5) that can perform a OrderBy on a value that is of data type String but which actually contains a parse-able DateTime. For example, typical values may be "5/12/2009" , "1/14/2008", etc. The OrderBy clause below works correctly for ordering (as if string data), but I actually want ...

C#: Convert an Expression<Func<T, bool>> to a Predicate<T>

I have a method that accepts an Expression<Func<T, bool>> as a parameter. I would like to use it as a predicate in the List.Find() method, but I can't seem to convert it to a Predicate which List takes. Do you know a simple way to do this? public IList<T> Find<T>(Expression<Func<T, bool>> expression) where T : class, new() { var l...

Linq to Sql - Only select certain information (w/ Predicate Builder)

I am using Linq to Sql with Predicate Builder and am trying to optimize how much information is retrieved from the database. I would like to select only certain fields to display them in a gridview. When I select only what I want, the search parameters I add (see below) don't work, and neither does PredicateBuilder. Here's what I'm cu...

Predicates and lambda expression

I have recently moved to .net 3.0 (windows forms, C#). I want to know more about predicates and lambda expressions. Where should we use them? Do they improve performance? and how do they work internally. Thanks. ...

Combine Multiple Predicates

Hello, Is there any way in c# .NET 2.0! to combine multiple Predicates? Let's say I have the following code. List<string> names = new List<string>(); names.Add("Jacob"); names.Add("Emma"); names.Add("Michael"); names.Add("Isabella"); names.Add("Ethan"); names.Add("Emily"); List<string> filteredNames = names.FindAll(StartsWithE); sta...

Patterns/Practices for encapsulating predicates

I'm guessing most of us have to deal with this at some point so I thought I'd ask the question. When you have a lot of collections in your BLL and you find that you're writing the same old inline (anonymous) predicates over and over then there's clearly a case for encapsulation there but what's the best way to achieve that? The project...

How do I implement a matching algorithm using predicates?

I understand how to use delegates and I am okay with lambda expressions to make use of predicates. I've come to a point where I want to implement a method that uses a predicate as an argument and can't figure out how to reference the predicate to find the matches in my collection: private static T FindInCollection<T>(ICollection<T> col...

Way to determine proper predicate for templated types

Suppose I have a function which looks like this: template <class In, class In2> void func(In first, In last, In2 first2); I would like this function to call another function which accepts a predicate. My initial instinct was to do something like this: template <class In, class In2> void func(In first, In last, In2 first2) { typed...

How can I implement the unification algorithm in a language like Java or C#?

I'm working through my AI textbook I got and I've come to the last homework problem for my section: "Implement the Unification Algorithm outlined on page 69 in any language of your choice." On page 69, you have the following pseudo-code for the unification algorithm: function unify(E1, E2); begin case both E1 a...

Using STL/Boost to find and modify matching elements in a vector

Let's say I have a vector declared like this: struct MYSTRUCT { float a; float b; }; std::vector<MYSTRUCT> v; Now, I want to find all elements of v that share the same a, and average their b, i.e. Say v contains these five elements {a, b}: {1, 1}, {1, 2}, {2, 1}, {1, 3}, {2, 2} I want to get v[0], v[1], v[3] (where a is 1) and av...