Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.
Close
From: <noreply@so...>  20021022 09:30:32

Bugs item #626791, was opened at 20021022 05:30 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=626791&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: scanmap factor problem Initial Comment: expr: %I*LOG( ( x^4/((x^21)^2+2*x^2) 4*x^2/((x^21)^2+2*x^2) +1/((x^21)^2+2*x^2) )^2 + ( 2*SQRT(2)*x^3/((x^21)^2+2*x^2) 2*SQRT(2)*x/((x^21)^2+2*x^2) )^2 ); scexpr: scanmap(factor,expr) => %I*LOG((x^8+2*x^4+1)/(x^4+1)^2) This looks OK, except that the inside rational expression is not factored (it is actually equal to 1). So let's try scanmap/factoring it again: scanmap(factor, scexpr) => No change! On the other hand, if we enter the expression from scratch: entered: %I*LOG((x^8+2*x^4+1)/(x^4+1)^2) we find that it does factor nicely scanmap(factor,entered) => 0 The reason is that the internal form of scexpr is marked Factored and Irreducible: ((MTIMES SIMP) $%I ((%LOG SIMP) ((MTIMES SIMP FACTORED) ((MEXPT SIMP) ((MPLUS SIMP IRREDUCIBLE) 1 ((MEXPT SIMP RATSIMP) $x 4)) 2) ((MPLUS SIMP IRREDUCIBLE) 1 ((MTIMES SIMP) 2 ((MEXPT SIMP RATSIMP) $x 4)) ((MEXPT SIMP RATSIMP) $x 8))))) I see two issue here. First of all, I'd have expected the scanmap/factor to go directly to the fully factored form, namely 0. Secondly, if it doesn't, it should at least not mismark the result as factored/irreducible. The incomplete factoring is arguably part of the semantics of Scanmap, inherent in topdown scanning, . And indeed Scanmap/bottomup does get the simplest form (after patching subst0 as reported in the previous bug note). On the other hand, I don't see any excuse for mismarking. If something isn't factored or irreducible, it shouldn't be marked as factored or irreducible. Note that Factor actually has a special case for Scanmap (the scanmapp flag). I suspect that this is to force incomplete factoring, and that mismarking comes as an undesired sideeffect.  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=626791&group_id=4933 
From: SourceForge.net <noreply@so...>  20060701 02:55:38

Bugs item #626791, was opened at 20021022 03:30 Message generated for change (Settings changed) made by robert_dodier You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=626791&group_id=4933 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. >Category: Lisp Core Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: scanmap factor problem Initial Comment: expr: %I*LOG( ( x^4/((x^21)^2+2*x^2) 4*x^2/((x^21)^2+2*x^2) +1/((x^21)^2+2*x^2) )^2 + ( 2*SQRT(2)*x^3/((x^21)^2+2*x^2) 2*SQRT(2)*x/((x^21)^2+2*x^2) )^2 ); scexpr: scanmap(factor,expr) => %I*LOG((x^8+2*x^4+1)/(x^4+1)^2) This looks OK, except that the inside rational expression is not factored (it is actually equal to 1). So let's try scanmap/factoring it again: scanmap(factor, scexpr) => No change! On the other hand, if we enter the expression from scratch: entered: %I*LOG((x^8+2*x^4+1)/(x^4+1)^2) we find that it does factor nicely scanmap(factor,entered) => 0 The reason is that the internal form of scexpr is marked Factored and Irreducible: ((MTIMES SIMP) $%I ((%LOG SIMP) ((MTIMES SIMP FACTORED) ((MEXPT SIMP) ((MPLUS SIMP IRREDUCIBLE) 1 ((MEXPT SIMP RATSIMP) $x 4)) 2) ((MPLUS SIMP IRREDUCIBLE) 1 ((MTIMES SIMP) 2 ((MEXPT SIMP RATSIMP) $x 4)) ((MEXPT SIMP RATSIMP) $x 8))))) I see two issue here. First of all, I'd have expected the scanmap/factor to go directly to the fully factored form, namely 0. Secondly, if it doesn't, it should at least not mismark the result as factored/irreducible. The incomplete factoring is arguably part of the semantics of Scanmap, inherent in topdown scanning, . And indeed Scanmap/bottomup does get the simplest form (after patching subst0 as reported in the previous bug note). On the other hand, I don't see any excuse for mismarking. If something isn't factored or irreducible, it shouldn't be marked as factored or irreducible. Note that Factor actually has a special case for Scanmap (the scanmapp flag). I suspect that this is to force incomplete factoring, and that mismarking comes as an undesired sideeffect.  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=626791&group_id=4933 
From: SourceForge.net <noreply@so...>  20060909 14:53:01

Bugs item #626791, was opened at 20021022 03:30 Message generated for change (Settings changed) made by robert_dodier You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=626791&group_id=4933 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. >Category: Lisp Core  Polynomials Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: scanmap factor problem Initial Comment: expr: %I*LOG( ( x^4/((x^21)^2+2*x^2) 4*x^2/((x^21)^2+2*x^2) +1/((x^21)^2+2*x^2) )^2 + ( 2*SQRT(2)*x^3/((x^21)^2+2*x^2) 2*SQRT(2)*x/((x^21)^2+2*x^2) )^2 ); scexpr: scanmap(factor,expr) => %I*LOG((x^8+2*x^4+1)/(x^4+1)^2) This looks OK, except that the inside rational expression is not factored (it is actually equal to 1). So let's try scanmap/factoring it again: scanmap(factor, scexpr) => No change! On the other hand, if we enter the expression from scratch: entered: %I*LOG((x^8+2*x^4+1)/(x^4+1)^2) we find that it does factor nicely scanmap(factor,entered) => 0 The reason is that the internal form of scexpr is marked Factored and Irreducible: ((MTIMES SIMP) $%I ((%LOG SIMP) ((MTIMES SIMP FACTORED) ((MEXPT SIMP) ((MPLUS SIMP IRREDUCIBLE) 1 ((MEXPT SIMP RATSIMP) $x 4)) 2) ((MPLUS SIMP IRREDUCIBLE) 1 ((MTIMES SIMP) 2 ((MEXPT SIMP RATSIMP) $x 4)) ((MEXPT SIMP RATSIMP) $x 8))))) I see two issue here. First of all, I'd have expected the scanmap/factor to go directly to the fully factored form, namely 0. Secondly, if it doesn't, it should at least not mismark the result as factored/irreducible. The incomplete factoring is arguably part of the semantics of Scanmap, inherent in topdown scanning, . And indeed Scanmap/bottomup does get the simplest form (after patching subst0 as reported in the previous bug note). On the other hand, I don't see any excuse for mismarking. If something isn't factored or irreducible, it shouldn't be marked as factored or irreducible. Note that Factor actually has a special case for Scanmap (the scanmapp flag). I suspect that this is to force incomplete factoring, and that mismarking comes as an undesired sideeffect.  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=626791&group_id=4933 