Re: Help with concatenating a list with &&
- To: mathgroup at smc.vnet.net
- Subject: [mg102217] Re: [mg102153] Help with concatenating a list with &&
- From: Tomas Garza <tgarza10 at msn.com>
- Date: Sat, 1 Aug 2009 04:03:01 -0400 (EDT)
- References: <200907310952.FAA19208@smc.vnet.net>
Hello, Jane: Not being an expert, I find it very useful to peruse the on-line documentation center - when in doubt. I found that BooleanConvert may be used to answer your query In[1]:= ls={ex1,ex2,ex3,ex4} Out[1]= {ex1,ex2,ex3,ex4} In[2]:= BooleanConvert[Equivalent[Sequence@@ls]] Out[2]= (ex1&&ex2&&ex3&&ex4)||(!ex1&&!ex2&&!ex3&&!ex4) Taking the first part of the output will give what you are after: In[3]:= %[[1]] Out[3]= ex1&&ex2&&ex3&&ex4 Cheers, Tomas > Date: Fri, 31 Jul 2009 05:52:48 -0400 > From: janemkiwi at gmail.com > Subject: [mg102153] Help with concatenating a list with && > To: mathgroup at smc.vnet.net > > Can anyone help me make better use of mathematica's built in commands? > > My problem is to take the list of expressions ls: > > ls={ex1, ex2, ex3, ex4} > > and connect them to obtain > > ex1 && ex2 && ex3 && ex4 > > > I thought I should be able to use > > && @@ ls > > or equivalently Apply[&&, ls] > > However this fails. I ended up using the very awkward > > conditions = ls[[1]] && ls[[2]] > Do[conds = conds && ls[[i]], {i, 3, Length[ls]}] > > which works but feels like just bludgeoning the problem > > Does anyone know of a more elegant way to work this? > > Thanks, > Jane. >