Opened 9 years ago

Last modified 6 years ago

#12554 new enhancement

Adding a "swap" method to equation objects.

Reported by: JoalHeagney Owned by:
Priority: minor Milestone: sage-6.4
Component: symbolics Keywords: swap, left hand side, right hand side, inequalities
Cc: Merged in:
Authors: Ivan Andrus, Joal Heagney Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges


Often when working with sage equations, it's desirable to swap the left and right hand side of the equations. (Makes substitutions easier for a start, allows manual solving of inequalities, etc.)

A model implementation by Ivan Andrus!topic/sage-support/lKbMSQrFhGg (in function form) is supplied below (with some rearrangement so equal operator case is tested first):

import operator
def reverse_inequality(eq):
    Reverse the order of the inequality without changing it's meaning.
    orig_op = eq.operator() # The "top-level" operator
    if orig_op == operator.eq:
        op = operator.eq
    elif orig_op ==
        op =
    elif orig_op == operator.le:
        op =
    elif orig_op ==
        op =
    elif orig_op ==
        op = operator.le
    elif orig_op ==
        op =
        raise TypeError, "this expression must be a relation"
   return op(eq.rhs(), eq.lhs())

My request is that something similar be attached to equation objects as a method.

Change History (7)

comment:1 Changed 9 years ago by JoalHeagney

  • Authors set to Ivan Andrus, Joal Heagney

comment:2 Changed 8 years ago by jdemeyer

  • Milestone changed from sage-5.11 to sage-5.12

comment:3 Changed 7 years ago by vbraun_spam

  • Milestone changed from sage-6.1 to sage-6.2

comment:4 Changed 7 years ago by vbraun_spam

  • Milestone changed from sage-6.2 to sage-6.3

comment:5 Changed 7 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4

comment:6 Changed 6 years ago by rws

  • Component changed from algebra to symbolics
  • Owner changed from AlexGhitza to burcin

comment:7 Changed 6 years ago by rws

  • Owner changed from burcin to (none)
Note: See TracTickets for help on using tickets.