Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/GAP/pkg/anupq/src/   (Algebra von RWTH Aachen Version 4.15.1©)  Datei vom 28.7.2025 mit Größe 3 kB image not shown  

Quelle  exponent_info.c   Sprache: C

 
/****************************************************************************
**
*A  exponent_info.c             ANUPQ source                   Eamonn O'Brien
**
*Y  Copyright 1995-2001,  Lehrstuhl D fuer Mathematik,  RWTH Aachen,  Germany
*Y  Copyright 1995-2001,  School of Mathematical Sciences, ANU,     Australia
**
*/


#include "pq_defs.h"
#include "constants.h"
#include "pcp_vars.h"
#include "exp_vars.h"
#include "pq_functions.h"

/* read information for exponent checking */

void exponent_info(struct exp_vars *exp_flag, struct pcp_vars *pcp)
{
   Logical reading = TRUE;
   Logical Default;

   read_value(TRUE"Accept default exponent checking? ", &Default, INT_MIN);

   if (Default) {
      exp_flag->list = (pcp->m == 0) ? ALL_WORDS : REDUCED_LIST;
      exp_flag->process = TRUE;
      exp_flag->complete = FALSE;
      exp_flag->partitions = FALSE;
      exp_flag->filter = FALSE;
      exp_flag->start_process = 0;
      exp_flag->report_unit = 0;
      exp_flag->word_list = FALSE;
      exp_flag->all_trivial = TRUE;
      exp_flag->check_exponent = FALSE;
      return;
   }

   while (reading) {
      read_value(TRUE,
                 "Complete list (1), reduced list (2), or word list (3)? ",
                 &exp_flag->list,
                 1);
      reading =
          !(exp_flag->list == ALL_WORDS || exp_flag->list == REDUCED_LIST ||
            exp_flag->list == INITIAL_SEGMENT);
      if (reading)
         printf("Supplied value must be one of %d, %d, or %d\n",
                ALL_WORDS,
                REDUCED_LIST,
                INITIAL_SEGMENT);
   }

   read_value(TRUE,
              "Power valid words and echelonise results? ",
              &exp_flag->process,
              INT_MIN);

   if (exp_flag->process) {
      read_value(TRUE,
                 "Input number of the first valid word to process? ",
                 &exp_flag->start_process,
                 0);
      read_value(TRUE,
                 "Report after collecting how many words (0 for no report)? ",
                 &exp_flag->report_unit,
                 0);
   } else {
      exp_flag->start_process = 0;
      exp_flag->report_unit = 0;
   }

   read_value(TRUE,
              "Print list prior to applying filters? ",
              &exp_flag->complete,
              INT_MIN);


   read_value(TRUE,
              "Identify filter applied to remove word? ",
              &exp_flag->filter,
              INT_MIN);

   read_value(TRUE,
              "Write list of test words to relation file? ",
              &exp_flag->word_list,
              INT_MIN);

   exp_flag->partitions = FALSE;
}

/* default exponent flag settings */

void initialise_exponent(struct exp_vars *exp_flag, struct pcp_vars *pcp)
{
   int length;

   exp_flag->list = ALL_WORDS;
   exp_flag->process = TRUE;
   exp_flag->complete = FALSE;
   exp_flag->partitions = FALSE;
   exp_flag->filter = FALSE;
   exp_flag->start_process = 0;
   exp_flag->report_unit = 0;
   exp_flag->word_list = FALSE;
   exp_flag->all_trivial = TRUE;
   exp_flag->check_exponent = FALSE;

   if (pcp->m != 0) {
      length = MAX(1, pcp->lastg - pcp->ccbeg + 1);
      exp_flag->queue = allocate_vector(length, 1, FALSE);
      exp_flag->queue_length = 0;
   }
}

94%


¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.