2
$\begingroup$

I have some output from reduce as follows:


solutions = 

{(m1 == -4 && m2 == 3 && m3 == 5 && m4 == -3) || (m1 == -4 && 
    m2 == 5 && m3 == 5 && m4 == -4) || (m1 == 0 && m2 == 1 && 
    m3 == -3 && m4 == 4), (m1 == -3 && m2 == 5 && m3 == 3 && 
    m4 == -4) || (m1 == 1 && m2 == 0 && m3 == -5 && 
    m4 == 3) || (m1 == 1 && m2 == 1 && m3 == -5 && 
    m4 == 4), (m1 == -5 && m2 == 3 && m3 == 1 && 
    m4 == 0) || (m1 == -5 && m2 == 4 && m3 == 1 && 
    m4 == 1) || (m1 == 3 && m2 == -4 && m3 == -3 && 
    m4 == 5), (m1 == -3 && m2 == 4 && m3 == 0 && 
    m4 == 1) || (m1 == 5 && m2 == -4 && m3 == -4 && 
    m4 == 5) || (m1 == 5 && m2 == -3 && m3 == -4 && 
    m4 == 3), (m1 == -1 && m2 == -1 && m3 == -4 && 
    m4 == 5) || (m1 == -1 && m2 == 0 && m3 == -4 && 
    m4 == 3) || (m1 == 3 && m2 == -5 && m3 == 0 && 
    m4 == 1), (m1 == 0 && m2 == -1 && m3 == -3 && 
    m4 == 5) || (m1 == 4 && m2 == -5 && m3 == 1 && 
    m4 == 1) || (m1 == 4 && m2 == -3 && m3 == 1 && 
    m4 == 0), (m1 == -5 && m2 == 4 && m3 == 4 && 
    m4 == -5) || (m1 == -5 && m2 == 5 && m3 == 4 && 
    m4 == -1) || (m1 == -1 && m2 == 0 && m3 == -4 && 
    m4 == 3), (m1 == -5 && m2 == 3 && m3 == 4 && 
    m4 == -3) || (m1 == -1 && m2 == -1 && m3 == -4 && 
    m4 == 5) || (m1 == -1 && m2 == 4 && m3 == -4 && 
    m4 == 1), (m1 == -4 && m2 == 1 && m3 == -1 && 
    m4 == 4) || (m1 == -4 && m2 == 5 && m3 == -1 && 
    m4 == -1) || (m1 == 4 && m2 == -3 && m3 == -5 && 
    m4 == 3), (m1 == -4 && m2 == 3 && m3 == -1 && 
    m4 == 0) || (m1 == 4 && m2 == -5 && m3 == -5 && 
    m4 == 4) || (m1 == 4 && m2 == -1 && m3 == -5 && 
    m4 == 5), (m1 == 1 && m2 == -4 && m3 == -5 && 
    m4 == 5) || (m1 == 1 && m2 == 1 && m3 == -5 && 
    m4 == 4) || (m1 == 5 && m2 == -3 && m3 == -1 && 
    m4 == 0), (m1 == 1 && m2 == 0 && m3 == -5 && 
    m4 == 3) || (m1 == 5 && m2 == -5 && m3 == -1 && 
    m4 == 4) || (m1 == 5 && m2 == -4 && m3 == -1 && 
    m4 == -1), (m1 == -5 && m2 == 5 && m3 == 4 && 
    m4 == -1) || (m1 == -1 && m2 == 4 && m3 == -4 && 
    m4 == 1) || (m1 == 3 && m2 == -3 && m3 == 0 && 
    m4 == 3) || (m1 == 3 && m2 == 0 && m3 == 0 && 
    m4 == -3), (m1 == -4 && m2 == 1 && m3 == -1 && 
    m4 == 4) || (m1 == 0 && m2 == -3 && m3 == 3 && 
    m4 == 0) || (m1 == 0 && m2 == 3 && m3 == 3 && 
    m4 == -3) || (m1 == 4 && m2 == -1 && m3 == -5 && 
    m4 == 5), (m1 == -3 && m2 == 0 && m3 == 3 && 
    m4 == -3) || (m1 == -3 && m2 == 3 && m3 == 3 && 
    m4 == 0) || (m1 == 1 && m2 == -4 && m3 == -5 && 
    m4 == 5) || (m1 == 5 && m2 == -5 && m3 == -1 && m4 == 4)}

Then I use Map on TotalRules giving


solutionsrules = Map[ToRules, solutions]

{{m1 -> -4, m2 -> 3, m3 -> 5, m4 -> -3}, {m1 -> -4, m2 -> 5, m3 -> 5, 
  m4 -> -4}, {m1 -> 0, m2 -> 1, m3 -> -3, m4 -> 4}, {m1 -> -3, 
  m2 -> 5, m3 -> 3, m4 -> -4}, {m1 -> 1, m2 -> 0, m3 -> -5, 
  m4 -> 3}, {m1 -> 1, m2 -> 1, m3 -> -5, m4 -> 4}, {m1 -> -5, m2 -> 3,
   m3 -> 1, m4 -> 0}, {m1 -> -5, m2 -> 4, m3 -> 1, m4 -> 1}, {m1 -> 3,
   m2 -> -4, m3 -> -3, m4 -> 5}, {m1 -> -3, m2 -> 4, m3 -> 0, 
  m4 -> 1}, {m1 -> 5, m2 -> -4, m3 -> -4, m4 -> 5}, {m1 -> 5, 
  m2 -> -3, m3 -> -4, m4 -> 3}, {m1 -> -1, m2 -> -1, m3 -> -4, 
  m4 -> 5}, {m1 -> -1, m2 -> 0, m3 -> -4, m4 -> 3}, {m1 -> 3, 
  m2 -> -5, m3 -> 0, m4 -> 1}, {m1 -> 0, m2 -> -1, m3 -> -3, 
  m4 -> 5}, {m1 -> 4, m2 -> -5, m3 -> 1, m4 -> 1}, {m1 -> 4, m2 -> -3,
   m3 -> 1, m4 -> 0}, {m1 -> -5, m2 -> 4, m3 -> 4, 
  m4 -> -5}, {m1 -> -5, m2 -> 5, m3 -> 4, m4 -> -1}, {m1 -> -1, 
  m2 -> 0, m3 -> -4, m4 -> 3}, {m1 -> -5, m2 -> 3, m3 -> 4, 
  m4 -> -3}, {m1 -> -1, m2 -> -1, m3 -> -4, m4 -> 5}, {m1 -> -1, 
  m2 -> 4, m3 -> -4, m4 -> 1}, {m1 -> -4, m2 -> 1, m3 -> -1, 
  m4 -> 4}, {m1 -> -4, m2 -> 5, m3 -> -1, m4 -> -1}, {m1 -> 4, 
  m2 -> -3, m3 -> -5, m4 -> 3}, {m1 -> -4, m2 -> 3, m3 -> -1, 
  m4 -> 0}, {m1 -> 4, m2 -> -5, m3 -> -5, m4 -> 4}, {m1 -> 4, 
  m2 -> -1, m3 -> -5, m4 -> 5}, {m1 -> 1, m2 -> -4, m3 -> -5, 
  m4 -> 5}, {m1 -> 1, m2 -> 1, m3 -> -5, m4 -> 4}, {m1 -> 5, m2 -> -3,
   m3 -> -1, m4 -> 0}, {m1 -> 1, m2 -> 0, m3 -> -5, 
  m4 -> 3}, {m1 -> 5, m2 -> -5, m3 -> -1, m4 -> 4}, {m1 -> 5, 
  m2 -> -4, m3 -> -1, m4 -> -1}, {m1 -> -5, m2 -> 5, m3 -> 4, 
  m4 -> -1}, {m1 -> -1, m2 -> 4, m3 -> -4, m4 -> 1}, {m1 -> 3, 
  m2 -> -3, m3 -> 0, m4 -> 3}, {m1 -> 3, m2 -> 0, m3 -> 0, 
  m4 -> -3}, {m1 -> -4, m2 -> 1, m3 -> -1, m4 -> 4}, {m1 -> 0, 
  m2 -> -3, m3 -> 3, m4 -> 0}, {m1 -> 0, m2 -> 3, m3 -> 3, 
  m4 -> -3}, {m1 -> 4, m2 -> -1, m3 -> -5, m4 -> 5}, {m1 -> -3, 
  m2 -> 0, m3 -> 3, m4 -> -3}, {m1 -> -3, m2 -> 3, m3 -> 3, 
  m4 -> 0}, {m1 -> 1, m2 -> -4, m3 -> -5, m4 -> 5}, {m1 -> 5, 
  m2 -> -5, m3 -> -1, m4 -> 4}}

But my output here does not preserve the initial structure in the sense that I want the three initial conditional lists to become three elements of a first sublist and so on - the last three sublists would consist of four elements each.

I hope I am explaining that clearly. I just can't seem to get what I want from Map.

$\endgroup$
1
$\begingroup$
solutionsrules = Map[List @* ToRules, expr]

enter image description here

Alternatively, you can use

solutionsrules2 = solutions /. {And | Or -> List, Equal -> Rule};

solutionsrules2 == solutionsrules
True
$\endgroup$
1
  • $\begingroup$ Thank you so much. I was trying everything - and obviously not the right thing. Just what I wanted. $\endgroup$
    – 1729taxi
    Jan 15 at 0:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.