Sort with assumptions The Next CEO of Stack Overflowvariable sized lists and using lists as variablesRetaining and reusing a one-to-one mapping from a sortSorting a matrix alphanumericallyRearranging a ListHow can I check if one expression implies another?Generating an Array of VectorsImporting, sorting and exporting listsDeleting Lonely Numbers From a ListApplying multiple functions to a single column in a tableFind positions in which list elements are equal

Is it professional to write unrelated content in an almost-empty email?

Is there such a thing as a proper verb, like a proper noun?

TikZ: How to fill area with a special pattern?

Help! I cannot understand this game’s notations!

Can Sneak Attack be used when hitting with an improvised weapon?

Where do students learn to solve polynomial equations these days?

Is there a reasonable and studied concept of reduction between regular languages?

Audio Conversion With ADS1243

What is the process for purifying your home if you believe it may have been previously used for pagan worship?

Ising model simulation

Vector calculus integration identity problem

Why is the US ranked as #45 in Press Freedom ratings, despite its extremely permissive free speech laws?

How to get the last not-null value in an ordered column of a huge table?

Point distance program written without a framework

Is fine stranded wire ok for main supply line?

It is correct to match light sources with the same color temperature?

Why did early computer designers eschew integers?

Are the names of these months realistic?

Why don't programming languages automatically manage the synchronous/asynchronous problem?

Free fall ellipse or parabola?

The Ultimate Number Sequence Puzzle

Why am I getting "Static method cannot be referenced from a non static context: String String.valueOf(Object)"?

How can the PCs determine if an item is a phylactery?

Is it ok to trim down a tube patch?



Sort with assumptions



The Next CEO of Stack Overflowvariable sized lists and using lists as variablesRetaining and reusing a one-to-one mapping from a sortSorting a matrix alphanumericallyRearranging a ListHow can I check if one expression implies another?Generating an Array of VectorsImporting, sorting and exporting listsDeleting Lonely Numbers From a ListApplying multiple functions to a single column in a tableFind positions in which list elements are equal










6












$begingroup$


I have a list which looks like this



list = 0, Subscript[x,7], -Subscript[x,3]-Subscript[x,9], -Subscript[x,9];



and all the $x_i$'s are positive semidefinite (i.e. nonnegative) real numbers. I would like to be able to sort this into



sortedlist = -Subscript[x,3]-Subscript[x,9], -Subscript[x,9], 0, Subscript[x,7]



How do I achieve this? I tried



Assuming[Subscript[x,3] > 0 && Subscript[x,7] > 0 && Subscript[x,9] > 0, Sort[list]]



But this obviously does not work. In general, I'd like to be able to impose more constraints on the $x_i's$ when they're being sorted.










share|improve this question









$endgroup$







  • 1




    $begingroup$
    An interesting idea, but a symbolic list where you have an ordering for all the elements is rare
    $endgroup$
    – mikado
    Mar 19 at 21:31















6












$begingroup$


I have a list which looks like this



list = 0, Subscript[x,7], -Subscript[x,3]-Subscript[x,9], -Subscript[x,9];



and all the $x_i$'s are positive semidefinite (i.e. nonnegative) real numbers. I would like to be able to sort this into



sortedlist = -Subscript[x,3]-Subscript[x,9], -Subscript[x,9], 0, Subscript[x,7]



How do I achieve this? I tried



Assuming[Subscript[x,3] > 0 && Subscript[x,7] > 0 && Subscript[x,9] > 0, Sort[list]]



But this obviously does not work. In general, I'd like to be able to impose more constraints on the $x_i's$ when they're being sorted.










share|improve this question









$endgroup$







  • 1




    $begingroup$
    An interesting idea, but a symbolic list where you have an ordering for all the elements is rare
    $endgroup$
    – mikado
    Mar 19 at 21:31













6












6








6


3



$begingroup$


I have a list which looks like this



list = 0, Subscript[x,7], -Subscript[x,3]-Subscript[x,9], -Subscript[x,9];



and all the $x_i$'s are positive semidefinite (i.e. nonnegative) real numbers. I would like to be able to sort this into



sortedlist = -Subscript[x,3]-Subscript[x,9], -Subscript[x,9], 0, Subscript[x,7]



How do I achieve this? I tried



Assuming[Subscript[x,3] > 0 && Subscript[x,7] > 0 && Subscript[x,9] > 0, Sort[list]]



But this obviously does not work. In general, I'd like to be able to impose more constraints on the $x_i's$ when they're being sorted.










share|improve this question









$endgroup$




I have a list which looks like this



list = 0, Subscript[x,7], -Subscript[x,3]-Subscript[x,9], -Subscript[x,9];



and all the $x_i$'s are positive semidefinite (i.e. nonnegative) real numbers. I would like to be able to sort this into



sortedlist = -Subscript[x,3]-Subscript[x,9], -Subscript[x,9], 0, Subscript[x,7]



How do I achieve this? I tried



Assuming[Subscript[x,3] > 0 && Subscript[x,7] > 0 && Subscript[x,9] > 0, Sort[list]]



But this obviously does not work. In general, I'd like to be able to impose more constraints on the $x_i's$ when they're being sorted.







list-manipulation symbolic array sorting






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Mar 19 at 21:09









leastactionleastaction

244210




244210







  • 1




    $begingroup$
    An interesting idea, but a symbolic list where you have an ordering for all the elements is rare
    $endgroup$
    – mikado
    Mar 19 at 21:31












  • 1




    $begingroup$
    An interesting idea, but a symbolic list where you have an ordering for all the elements is rare
    $endgroup$
    – mikado
    Mar 19 at 21:31







1




1




$begingroup$
An interesting idea, but a symbolic list where you have an ordering for all the elements is rare
$endgroup$
– mikado
Mar 19 at 21:31




$begingroup$
An interesting idea, but a symbolic list where you have an ordering for all the elements is rare
$endgroup$
– mikado
Mar 19 at 21:31










4 Answers
4






active

oldest

votes


















5












$begingroup$

Here is a possibility:



sortWithAssumptions[list_, assum_] := Module[order,
order[a_, b_] := Simplify[a < b, assum];
Sort[list, order]
]


For your example:



sortWithAssumptions[
0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9],
Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0
] //TeXForm



$left-x_3-x_9,-x_9,0,x_7right$




Another example:



sortWithAssumptions[
0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9], Subscript[x,9],
Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0&&Subscript[x,7]<Subscript[x,9]
] //TeXForm



$left-x_3-x_9,-x_9,0,x_7,x_9right$







share|improve this answer









$endgroup$












  • $begingroup$
    Thank you, Carl!
    $endgroup$
    – leastaction
    Mar 19 at 21:38


















5












$begingroup$

How about:



list[[Ordering[list /. _Subscript -> 1]]]



-Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7]




So basically we sort it the way it would be sorted with all subscripts == 1.






share|improve this answer









$endgroup$












  • $begingroup$
    Thanks! Seems to work like a charm, but can you shed some light on why?
    $endgroup$
    – leastaction
    Mar 19 at 21:31










  • $begingroup$
    @leastaction just take a look at list /. _Subscript -> 1 and at Ordering[list /. _Subscript -> 1].
    $endgroup$
    – Kuba
    Mar 19 at 21:32










  • $begingroup$
    I see, so you basically assigned the value $x_i = 1$ to each $x_i$. It works in this case, but generically, $x_i$'s may be different.
    $endgroup$
    – leastaction
    Mar 19 at 21:36






  • 1




    $begingroup$
    @leastaction sure, which means there isn't only one correct answer and every valid within constraints is correct.
    $endgroup$
    – Kuba
    Mar 19 at 21:38



















4












$begingroup$

Sort[list, TrueQ@Simplify[#1 < #2, _Subscript > 0] &]

(* Out: -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)





share|improve this answer









$endgroup$




















    4












    $begingroup$

    In this case, we can use RankedMin and FullSimplify to get the answer you seek



    Assuming[
    Subscript[x, 3] > 0 && Subscript[x, 7] > 0 && Subscript[x, 9] > 0,
    FullSimplify[Table[RankedMin[list, i], i, 1, Length[list]]]]
    (* -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)


    This has the advantage of not returning a (potentially) wrong answer if the sort order is uncertain.






    share|improve this answer











    $endgroup$













      Your Answer





      StackExchange.ifUsing("editor", function ()
      return StackExchange.using("mathjaxEditing", function ()
      StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
      StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
      );
      );
      , "mathjax-editing");

      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "387"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f193600%2fsort-with-assumptions%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      4 Answers
      4






      active

      oldest

      votes








      4 Answers
      4






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      5












      $begingroup$

      Here is a possibility:



      sortWithAssumptions[list_, assum_] := Module[order,
      order[a_, b_] := Simplify[a < b, assum];
      Sort[list, order]
      ]


      For your example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7right$




      Another example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9], Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0&&Subscript[x,7]<Subscript[x,9]
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7,x_9right$







      share|improve this answer









      $endgroup$












      • $begingroup$
        Thank you, Carl!
        $endgroup$
        – leastaction
        Mar 19 at 21:38















      5












      $begingroup$

      Here is a possibility:



      sortWithAssumptions[list_, assum_] := Module[order,
      order[a_, b_] := Simplify[a < b, assum];
      Sort[list, order]
      ]


      For your example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7right$




      Another example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9], Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0&&Subscript[x,7]<Subscript[x,9]
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7,x_9right$







      share|improve this answer









      $endgroup$












      • $begingroup$
        Thank you, Carl!
        $endgroup$
        – leastaction
        Mar 19 at 21:38













      5












      5








      5





      $begingroup$

      Here is a possibility:



      sortWithAssumptions[list_, assum_] := Module[order,
      order[a_, b_] := Simplify[a < b, assum];
      Sort[list, order]
      ]


      For your example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7right$




      Another example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9], Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0&&Subscript[x,7]<Subscript[x,9]
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7,x_9right$







      share|improve this answer









      $endgroup$



      Here is a possibility:



      sortWithAssumptions[list_, assum_] := Module[order,
      order[a_, b_] := Simplify[a < b, assum];
      Sort[list, order]
      ]


      For your example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7right$




      Another example:



      sortWithAssumptions[
      0,Subscript[x,7],-Subscript[x,3]-Subscript[x,9],-Subscript[x,9], Subscript[x,9],
      Subscript[x,3]>0&&Subscript[x,7]>0&&Subscript[x,9]>0&&Subscript[x,7]<Subscript[x,9]
      ] //TeXForm



      $left-x_3-x_9,-x_9,0,x_7,x_9right$








      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered Mar 19 at 21:35









      Carl WollCarl Woll

      72.1k395186




      72.1k395186











      • $begingroup$
        Thank you, Carl!
        $endgroup$
        – leastaction
        Mar 19 at 21:38
















      • $begingroup$
        Thank you, Carl!
        $endgroup$
        – leastaction
        Mar 19 at 21:38















      $begingroup$
      Thank you, Carl!
      $endgroup$
      – leastaction
      Mar 19 at 21:38




      $begingroup$
      Thank you, Carl!
      $endgroup$
      – leastaction
      Mar 19 at 21:38











      5












      $begingroup$

      How about:



      list[[Ordering[list /. _Subscript -> 1]]]



      -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7]




      So basically we sort it the way it would be sorted with all subscripts == 1.






      share|improve this answer









      $endgroup$












      • $begingroup$
        Thanks! Seems to work like a charm, but can you shed some light on why?
        $endgroup$
        – leastaction
        Mar 19 at 21:31










      • $begingroup$
        @leastaction just take a look at list /. _Subscript -> 1 and at Ordering[list /. _Subscript -> 1].
        $endgroup$
        – Kuba
        Mar 19 at 21:32










      • $begingroup$
        I see, so you basically assigned the value $x_i = 1$ to each $x_i$. It works in this case, but generically, $x_i$'s may be different.
        $endgroup$
        – leastaction
        Mar 19 at 21:36






      • 1




        $begingroup$
        @leastaction sure, which means there isn't only one correct answer and every valid within constraints is correct.
        $endgroup$
        – Kuba
        Mar 19 at 21:38
















      5












      $begingroup$

      How about:



      list[[Ordering[list /. _Subscript -> 1]]]



      -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7]




      So basically we sort it the way it would be sorted with all subscripts == 1.






      share|improve this answer









      $endgroup$












      • $begingroup$
        Thanks! Seems to work like a charm, but can you shed some light on why?
        $endgroup$
        – leastaction
        Mar 19 at 21:31










      • $begingroup$
        @leastaction just take a look at list /. _Subscript -> 1 and at Ordering[list /. _Subscript -> 1].
        $endgroup$
        – Kuba
        Mar 19 at 21:32










      • $begingroup$
        I see, so you basically assigned the value $x_i = 1$ to each $x_i$. It works in this case, but generically, $x_i$'s may be different.
        $endgroup$
        – leastaction
        Mar 19 at 21:36






      • 1




        $begingroup$
        @leastaction sure, which means there isn't only one correct answer and every valid within constraints is correct.
        $endgroup$
        – Kuba
        Mar 19 at 21:38














      5












      5








      5





      $begingroup$

      How about:



      list[[Ordering[list /. _Subscript -> 1]]]



      -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7]




      So basically we sort it the way it would be sorted with all subscripts == 1.






      share|improve this answer









      $endgroup$



      How about:



      list[[Ordering[list /. _Subscript -> 1]]]



      -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7]




      So basically we sort it the way it would be sorted with all subscripts == 1.







      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered Mar 19 at 21:28









      KubaKuba

      107k12210533




      107k12210533











      • $begingroup$
        Thanks! Seems to work like a charm, but can you shed some light on why?
        $endgroup$
        – leastaction
        Mar 19 at 21:31










      • $begingroup$
        @leastaction just take a look at list /. _Subscript -> 1 and at Ordering[list /. _Subscript -> 1].
        $endgroup$
        – Kuba
        Mar 19 at 21:32










      • $begingroup$
        I see, so you basically assigned the value $x_i = 1$ to each $x_i$. It works in this case, but generically, $x_i$'s may be different.
        $endgroup$
        – leastaction
        Mar 19 at 21:36






      • 1




        $begingroup$
        @leastaction sure, which means there isn't only one correct answer and every valid within constraints is correct.
        $endgroup$
        – Kuba
        Mar 19 at 21:38

















      • $begingroup$
        Thanks! Seems to work like a charm, but can you shed some light on why?
        $endgroup$
        – leastaction
        Mar 19 at 21:31










      • $begingroup$
        @leastaction just take a look at list /. _Subscript -> 1 and at Ordering[list /. _Subscript -> 1].
        $endgroup$
        – Kuba
        Mar 19 at 21:32










      • $begingroup$
        I see, so you basically assigned the value $x_i = 1$ to each $x_i$. It works in this case, but generically, $x_i$'s may be different.
        $endgroup$
        – leastaction
        Mar 19 at 21:36






      • 1




        $begingroup$
        @leastaction sure, which means there isn't only one correct answer and every valid within constraints is correct.
        $endgroup$
        – Kuba
        Mar 19 at 21:38
















      $begingroup$
      Thanks! Seems to work like a charm, but can you shed some light on why?
      $endgroup$
      – leastaction
      Mar 19 at 21:31




      $begingroup$
      Thanks! Seems to work like a charm, but can you shed some light on why?
      $endgroup$
      – leastaction
      Mar 19 at 21:31












      $begingroup$
      @leastaction just take a look at list /. _Subscript -> 1 and at Ordering[list /. _Subscript -> 1].
      $endgroup$
      – Kuba
      Mar 19 at 21:32




      $begingroup$
      @leastaction just take a look at list /. _Subscript -> 1 and at Ordering[list /. _Subscript -> 1].
      $endgroup$
      – Kuba
      Mar 19 at 21:32












      $begingroup$
      I see, so you basically assigned the value $x_i = 1$ to each $x_i$. It works in this case, but generically, $x_i$'s may be different.
      $endgroup$
      – leastaction
      Mar 19 at 21:36




      $begingroup$
      I see, so you basically assigned the value $x_i = 1$ to each $x_i$. It works in this case, but generically, $x_i$'s may be different.
      $endgroup$
      – leastaction
      Mar 19 at 21:36




      1




      1




      $begingroup$
      @leastaction sure, which means there isn't only one correct answer and every valid within constraints is correct.
      $endgroup$
      – Kuba
      Mar 19 at 21:38





      $begingroup$
      @leastaction sure, which means there isn't only one correct answer and every valid within constraints is correct.
      $endgroup$
      – Kuba
      Mar 19 at 21:38












      4












      $begingroup$

      Sort[list, TrueQ@Simplify[#1 < #2, _Subscript > 0] &]

      (* Out: -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)





      share|improve this answer









      $endgroup$

















        4












        $begingroup$

        Sort[list, TrueQ@Simplify[#1 < #2, _Subscript > 0] &]

        (* Out: -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)





        share|improve this answer









        $endgroup$















          4












          4








          4





          $begingroup$

          Sort[list, TrueQ@Simplify[#1 < #2, _Subscript > 0] &]

          (* Out: -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)





          share|improve this answer









          $endgroup$



          Sort[list, TrueQ@Simplify[#1 < #2, _Subscript > 0] &]

          (* Out: -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)






          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Mar 19 at 21:35









          MarcoBMarcoB

          38.2k556114




          38.2k556114





















              4












              $begingroup$

              In this case, we can use RankedMin and FullSimplify to get the answer you seek



              Assuming[
              Subscript[x, 3] > 0 && Subscript[x, 7] > 0 && Subscript[x, 9] > 0,
              FullSimplify[Table[RankedMin[list, i], i, 1, Length[list]]]]
              (* -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)


              This has the advantage of not returning a (potentially) wrong answer if the sort order is uncertain.






              share|improve this answer











              $endgroup$

















                4












                $begingroup$

                In this case, we can use RankedMin and FullSimplify to get the answer you seek



                Assuming[
                Subscript[x, 3] > 0 && Subscript[x, 7] > 0 && Subscript[x, 9] > 0,
                FullSimplify[Table[RankedMin[list, i], i, 1, Length[list]]]]
                (* -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)


                This has the advantage of not returning a (potentially) wrong answer if the sort order is uncertain.






                share|improve this answer











                $endgroup$















                  4












                  4








                  4





                  $begingroup$

                  In this case, we can use RankedMin and FullSimplify to get the answer you seek



                  Assuming[
                  Subscript[x, 3] > 0 && Subscript[x, 7] > 0 && Subscript[x, 9] > 0,
                  FullSimplify[Table[RankedMin[list, i], i, 1, Length[list]]]]
                  (* -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)


                  This has the advantage of not returning a (potentially) wrong answer if the sort order is uncertain.






                  share|improve this answer











                  $endgroup$



                  In this case, we can use RankedMin and FullSimplify to get the answer you seek



                  Assuming[
                  Subscript[x, 3] > 0 && Subscript[x, 7] > 0 && Subscript[x, 9] > 0,
                  FullSimplify[Table[RankedMin[list, i], i, 1, Length[list]]]]
                  (* -Subscript[x, 3] - Subscript[x, 9], -Subscript[x, 9], 0, Subscript[x, 7] *)


                  This has the advantage of not returning a (potentially) wrong answer if the sort order is uncertain.







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Mar 19 at 21:43

























                  answered Mar 19 at 21:36









                  mikadomikado

                  6,8321929




                  6,8321929



























                      draft saved

                      draft discarded
















































                      Thanks for contributing an answer to Mathematica Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      Use MathJax to format equations. MathJax reference.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f193600%2fsort-with-assumptions%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      How should I support this large drywall patch? Planned maintenance scheduled April 23, 2019 at 00:00UTC (8:00pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?How do I cover large gaps in drywall?How do I keep drywall around a patch from crumbling?Can I glue a second layer of drywall?How to patch long strip on drywall?Large drywall patch: how to avoid bulging seams?Drywall Mesh Patch vs. Bulge? To remove or not to remove?How to fix this drywall job?Prep drywall before backsplashWhat's the best way to fix this horrible drywall patch job?Drywall patching using 3M Patch Plus Primer

                      Lowndes Grove History Architecture References Navigation menu32°48′6″N 79°57′58″W / 32.80167°N 79.96611°W / 32.80167; -79.9661132°48′6″N 79°57′58″W / 32.80167°N 79.96611°W / 32.80167; -79.9661178002500"National Register Information System"Historic houses of South Carolina"Lowndes Grove""+32° 48' 6.00", −79° 57' 58.00""Lowndes Grove, Charleston County (260 St. Margaret St., Charleston)""Lowndes Grove"The Charleston ExpositionIt Happened in South Carolina"Lowndes Grove (House), Saint Margaret Street & Sixth Avenue, Charleston, Charleston County, SC(Photographs)"Plantations of the Carolina Low Countrye

                      Kathakali Contents Etymology and nomenclature History Repertoire Songs and musical instruments Traditional plays Styles: Sampradayam Training centers and awards Relationship to other dance forms See also Notes References External links Navigation menueThe Illustrated Encyclopedia of Hinduism: A-MSouth Asian Folklore: An EncyclopediaRoutledge International Encyclopedia of Women: Global Women's Issues and KnowledgeKathakali Dance-drama: Where Gods and Demons Come to PlayKathakali Dance-drama: Where Gods and Demons Come to PlayKathakali Dance-drama: Where Gods and Demons Come to Play10.1353/atj.2005.0004The Illustrated Encyclopedia of Hinduism: A-MEncyclopedia of HinduismKathakali Dance-drama: Where Gods and Demons Come to PlaySonic Liturgy: Ritual and Music in Hindu Tradition"The Mirror of Gesture"Kathakali Dance-drama: Where Gods and Demons Come to Play"Kathakali"Indian Theatre: Traditions of PerformanceIndian Theatre: Traditions of PerformanceIndian Theatre: Traditions of PerformanceIndian Theatre: Traditions of PerformanceMedieval Indian Literature: An AnthologyThe Oxford Companion to Indian TheatreSouth Asian Folklore: An Encyclopedia : Afghanistan, Bangladesh, India, Nepal, Pakistan, Sri LankaThe Rise of Performance Studies: Rethinking Richard Schechner's Broad SpectrumIndian Theatre: Traditions of PerformanceModern Asian Theatre and Performance 1900-2000Critical Theory and PerformanceBetween Theater and AnthropologyKathakali603847011Indian Theatre: Traditions of PerformanceIndian Theatre: Traditions of PerformanceIndian Theatre: Traditions of PerformanceBetween Theater and AnthropologyBetween Theater and AnthropologyNambeesan Smaraka AwardsArchivedThe Cambridge Guide to TheatreRoutledge International Encyclopedia of Women: Global Women's Issues and KnowledgeThe Garland Encyclopedia of World Music: South Asia : the Indian subcontinentThe Ethos of Noh: Actors and Their Art10.2307/1145740By Means of Performance: Intercultural Studies of Theatre and Ritual10.1017/s204912550000100xReconceiving the Renaissance: A Critical ReaderPerformance TheoryListening to Theatre: The Aural Dimension of Beijing Opera10.2307/1146013Kathakali: The Art of the Non-WorldlyOn KathakaliKathakali, the dance theatreThe Kathakali Complex: Performance & StructureKathakali Dance-Drama: Where Gods and Demons Come to Play10.1093/obo/9780195399318-0071Drama and Ritual of Early Hinduism"In the Shadow of Hollywood Orientalism: Authentic East Indian Dancing"10.1080/08949460490274013Sanskrit Play Production in Ancient IndiaIndian Music: History and StructureBharata, the Nāṭyaśāstra233639306Table of Contents2238067286469807Dance In Indian Painting10.2307/32047833204783Kathakali Dance-Theatre: A Visual Narrative of Sacred Indian MimeIndian Classical Dance: The Renaissance and BeyondKathakali: an indigenous art-form of Keralaeee