Changeset af7145 in git for Singular


Ignore:
Timestamp:
Dec 1, 2010, 1:56:35 PM (13 years ago)
Author:
Frank Seelisch <seelisch@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'c5facdfddea2addfd91babd8b9019161dea4b695')
Children:
35715cbb715ef8f8977fca4b923054147968c0d1
Parents:
4d22d3bbe140ec25c1d800b92606f9067563c581
Message:
command in extra.cc for hensel factors of a bivariate poly

git-svn-id: file:///usr/local/Singular/svn/trunk@13685 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/extra.cc

    r4d22d3 raf7145  
    137137
    138138#include <kernel/shiftgb.h>
     139#include <kernel/linearAlgebra.h>
    139140
    140141#ifdef HAVE_EIGENVAL
     
    629630        }
    630631      }
     632  /*==================== Hensel's lemma ======================*/
     633      if(strcmp(sys_cmd, "henselfactors")==0)
     634      {
     635        if ((h != NULL) && (h->Typ() == POLY_CMD) &&
     636            (h->next != NULL) && (h->next->Typ() == POLY_CMD) &&
     637            (h->next->next != NULL) && (h->next->next->Typ() == POLY_CMD) &&
     638            (h->next->next->next != NULL) &&
     639                                     (h->next->next->next->Typ() == INT_CMD))
     640        {
     641          poly hh = (poly)h->Data();
     642          poly f0 = (poly)h->next->Data();
     643          poly g0 = (poly)h->next->next->Data();
     644          int d   = (int)(long)h->next->next->next->Data();
     645          poly f; poly g;
     646          henselFactors(hh, f0, g0, d, f, g);
     647          lists L = (lists)omAllocBin(slists_bin);
     648          L->Init(2);
     649          L->m[0].rtyp = POLY_CMD; L->m[0].data=(void*)f;
     650          L->m[1].rtyp = POLY_CMD; L->m[1].data=(void*)g;
     651          res->rtyp = LIST_CMD;
     652          res->data = (char *)L;
     653          return FALSE;
     654        }
     655        else
     656        {
     657          Werror( "expected argument list (poly, poly, poly, int)");
     658          return TRUE;
     659        }
     660      }
    631661  /*==================== forking experiments ======================*/
    632662      if(strcmp(sys_cmd, "waitforssilinks")==0)
Note: See TracChangeset for help on using the changeset viewer.