Thank's to @Misha Lavrov (a great thanks !), here is how you can solve the problem :
BooleanMinimize[
BooleanFunction[{
{1,0,1,0}-> 1,
{1,0,1,1}-> 0,
{1,1,0,0}-> 1,
{1,1,0,1}-> 0,
{1,1,1,0}-> 1,
{1,1,1,1}-> 0
},{a,b,c,d}],
"SOP" (* = "DNF" *),
BooleanFunction[{
{1,1,_,_}-> 1, (* all cases above ... *)
{1,_,1,_}-> 1, (* ... are "do care" *)
{_,_,_,_}-> 0 (* other cases are "don't care" *)
},{a,b,c,d}]]
! d
Note :
@Misha Lavrov's comment (just below) was written before I added the third argument to BooleanMinimize
. At this time there were some "don't care" states in the first BooleanFunction[...]