Graph-Undirected-Hamiltonicity

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

Revision history for Graph-Undirected-Hamiltonicity

0.15    2022/10/01
	- Added Modern::Perl

0.17 2022-10-07T22:49:52Z
	- Fix Bug #7

0.16 2022-10-04T21:50:46Z
	- Added Modern::Perl to cpanfile

0.15 2022-10-01T20:15:09Z
	- Added Modern::Perl

0.14 2022-10-01T20:08:36Z
	- version

META.json  view on Meta::CPAN

         }
      },
      "runtime" : {
         "requires" : {
            "CGI::Minimal" : "1.29",
            "Carp" : "1.29",
            "Config::INI::Reader" : "0.025",
            "Exporter" : "5",
            "Graph" : "0.9",
            "LWP::UserAgent" : "6",
            "Modern::Perl" : "0",
            "Test::Exception" : "0",
            "perl" : "5.018004"
         }
      },
      "test" : {
         "requires" : {
            "Test::More" : "0.98"
         }
      }
   },

META.yml  view on Meta::CPAN

    file: lib/Graph/Undirected/Hamiltonicity/Transforms.pm
  Graph::Undirected::Hamiltonicity::Wolfram:
    file: lib/Graph/Undirected/Hamiltonicity/Wolfram.pm
requires:
  CGI::Minimal: '1.29'
  Carp: '1.29'
  Config::INI::Reader: '0.025'
  Exporter: '5'
  Graph: '0.9'
  LWP::UserAgent: '6'
  Modern::Perl: '0'
  Test::Exception: '0'
  perl: '5.018004'
resources:
  bugtracker: https://github.com/ownlifeful/Graph-Undirected-Hamiltonicity/issues
  homepage: https://github.com/ownlifeful/Graph-Undirected-Hamiltonicity
  repository: https://github.com/ownlifeful/Graph-Undirected-Hamiltonicity.git
version: '0.17'
x_contributors:
  - 'Ashwin Dixit <ashwin.dixit@gmail.com>'
  - 'Ashwin Dixit <ashwin.dixit@reopenlabs.com>'

Makefile.PL  view on Meta::CPAN

    },
    PREREQ_PM => {
        'Graph'               => '0.9',   # '0.9704',
        'Exporter'            => '5',     # '5.68',
        'LWP::UserAgent'      => '6',     # '6.15'
        'Config::INI::Reader' => '0.025',
        'Carp'                => '1.29',
        'Test::More'          => '0.98',
        'Test::Exception'     => '0',     # '0.43',
        'CGI::Minimal'        => '1.29',
        'Modern::Perl'        => '1',
    },
    dist  => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
    clean => { FILES => 'Graph-Undirected-Hamiltonicity-*' },
    test => { TESTS => join ' ', map { glob } qw( t/*.t t/*/*.t ) },
);

cpanfile  view on Meta::CPAN

    requires 'Test::More', '0.98';
};

requires 'Graph'               , '0.9';
requires 'Exporter'            , '5';
requires 'LWP::UserAgent'      , '6';
requires 'Config::INI::Reader' , '0.025';
requires 'Carp'                , '1.29';
requires 'Test::Exception'     , '0';
requires 'CGI::Minimal'        , '1.29';
requires 'Modern::Perl'        , '0';

lib/Graph/Undirected/Hamiltonicity.pm  view on Meta::CPAN

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

=head1 AUTHOR

Ashwin Dixit, C<< <ashwin at CPAN dot org> >>

=cut


use Modern::Perl;
use lib 'local/lib/perl5';

package Graph::Undirected::Hamiltonicity;

# ABSTRACT: decide whether a given Graph::Undirected contains a Hamiltonian Cycle.

# You can get documentation for this module with this command:
#    perldoc Graph::Undirected::Hamiltonicity

use Graph::Undirected::Hamiltonicity::Output qw(&output);

lib/Graph/Undirected/Hamiltonicity/Output.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Output;

use Modern::Perl;
use Carp;
use Exporter qw(import);

our @EXPORT_OK = qw(
    &output
    &output_graph_svg
    &output_image_svg
    &output_adjacency_matrix_svg
);

lib/Graph/Undirected/Hamiltonicity/Spoof.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Spoof;

use Modern::Perl;
use Carp;

use Graph::Undirected;
use Graph::Undirected::Hamiltonicity::Transforms qw(&add_random_edges &get_random_isomorph);

use Exporter qw(import);

our @EXPORT_OK = qw(
    &spoof_canonical_hamiltonian_graph
    &spoof_known_hamiltonian_graph

lib/Graph/Undirected/Hamiltonicity/Tests.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Tests;

use Modern::Perl;
use Exporter qw(import);

use Graph::Undirected::Hamiltonicity::Transforms qw(:all);
use Graph::Undirected::Hamiltonicity::Output qw(:all);

our $DONT_KNOW                = 0;
our $GRAPH_IS_HAMILTONIAN     = 1;
our $GRAPH_IS_NOT_HAMILTONIAN = 2;

our @EXPORT = qw($DONT_KNOW $GRAPH_IS_HAMILTONIAN $GRAPH_IS_NOT_HAMILTONIAN);

lib/Graph/Undirected/Hamiltonicity/Transforms.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Transforms;

use Modern::Perl;
use Carp;

use Graph::Undirected;
use Graph::Undirected::Hamiltonicity::Output qw(:all);

use Exporter qw(import);

our @EXPORT_OK = qw(
    &add_random_edges
    &delete_cycle_closing_edges

lib/Graph/Undirected/Hamiltonicity/Wolfram.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Wolfram;

use Modern::Perl;
use Carp;
use Config::INI::Reader;
use LWP::UserAgent;

use Exporter qw(import);

our @EXPORT_OK = qw(&is_hamiltonian_per_wolfram
    &get_url_from_config);
our @EXPORT = qw(&is_hamiltonian_per_wolfram);

lib/Graph/Undirected/Undirected/Hamiltonicity.pm  view on Meta::CPAN

use Modern::Perl;
use lib 'local/lib/perl5';

package Graph::Undirected::Hamiltonicity;

# ABSTRACT: decide whether a given Graph::Undirected contains a Hamiltonian Cycle.

# You can get documentation for this module with this command:
#    perldoc Graph::Undirected::Hamiltonicity

use Graph::Undirected::Hamiltonicity::Output qw(&output);

lib/Graph/Undirected/Undirected/Hamiltonicity/Output.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Output;

use Modern::Perl;
use Carp;
use Exporter qw(import);

our @EXPORT_OK = qw(
    &output
    &output_graph_svg
    &output_image_svg
    &output_adjacency_matrix_svg
);

lib/Graph/Undirected/Undirected/Hamiltonicity/Spoof.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Spoof;

use Modern::Perl;
use Carp;

use Graph::Undirected;
use Graph::Undirected::Hamiltonicity::Transforms qw(&add_random_edges &get_random_isomorph);

use Exporter qw(import);

our @EXPORT_OK = qw(
    &spoof_canonical_hamiltonian_graph
    &spoof_known_hamiltonian_graph

lib/Graph/Undirected/Undirected/Hamiltonicity/Tests.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Tests;

use Modern::Perl;
use Exporter qw(import);

use Graph::Undirected::Hamiltonicity::Transforms qw(:all);
use Graph::Undirected::Hamiltonicity::Output qw(:all);

our $DONT_KNOW                = 0;
our $GRAPH_IS_HAMILTONIAN     = 1;
our $GRAPH_IS_NOT_HAMILTONIAN = 2;

our @EXPORT = qw($DONT_KNOW $GRAPH_IS_HAMILTONIAN $GRAPH_IS_NOT_HAMILTONIAN);

lib/Graph/Undirected/Undirected/Hamiltonicity/Transforms.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Transforms;

use Modern::Perl;
use Carp;

use Graph::Undirected;
use Graph::Undirected::Hamiltonicity::Output qw(:all);

use Exporter qw(import);

our @EXPORT_OK = qw(
    &add_random_edges
    &delete_cycle_closing_edges

lib/Graph/Undirected/Undirected/Hamiltonicity/Wolfram.pm  view on Meta::CPAN

package Graph::Undirected::Hamiltonicity::Wolfram;

use Modern::Perl;
use Carp;
use Config::INI::Reader;
use LWP::UserAgent;

use Exporter qw(import);

our @EXPORT_OK = qw(&is_hamiltonian_per_wolfram
    &get_url_from_config);
our @EXPORT = qw(&is_hamiltonian_per_wolfram);

script/cgi-bin/hc.cgi  view on Meta::CPAN

#!/usr/bin/env perl

#
# This script demonstrates the functionality of the
# Graph::Undirected::Hamiltonicity module.
#
# It uses CGI::Minimal to keep it fairly portable.
#
use Modern::Perl;

use CGI::Minimal;
use Graph::Undirected;
use Graph::Undirected::Hamiltonicity;
use Graph::Undirected::Hamiltonicity::Transforms qw(&string_to_graph);

$ENV{HC_OUTPUT_FORMAT} = 'html';
$| = 1;


script/hamilton.pl  view on Meta::CPAN

#!/usr/bin/env perl
use Modern::Perl;

use Carp;
use Getopt::Long;

use Graph::Undirected::Hamiltonicity;
use Graph::Undirected::Hamiltonicity::Transforms qw(string_to_graph);
use Graph::Undirected::Hamiltonicity::Spoof qw(&spoof_known_hamiltonian_graph
&spoof_randomish_graph
);
use Graph::Undirected::Hamiltonicity::Wolfram qw(:all);

script/knights_tour.pl  view on Meta::CPAN

#!/usr/bin/perl env

use Modern::Perl;

my $DEBUG = 1;

use lib qw(/vagrant/GitHub/Graph-Undirected-Hamiltonicity/lib);

use Graph::Undirected;
use Graph::Undirected::Hamiltonicity;

my $board_size = 8; # 8x8 board
my ( @vertices, @edges, @A, %H );

t/000-load.t  view on Meta::CPAN

#!perl
use Modern::Perl;
use Test::More;

plan tests => 5;

BEGIN {
    use_ok( 'Graph::Undirected::Hamiltonicity' ) || say "Bail out Hamiltonicity!";
    use_ok( 'Graph::Undirected::Hamiltonicity::Output' ) || say "Bail out Output!";
    use_ok( 'Graph::Undirected::Hamiltonicity::Spoof' ) || say "Bail out Spoof!";
    use_ok( 'Graph::Undirected::Hamiltonicity::Transforms' ) || say "Bail out Transforms!";
    use_ok( 'Graph::Undirected::Hamiltonicity::Tests' ) || say "Bail out Tests!";

t/graph_is_hamiltonian.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity qw(:all);
use Graph::Undirected::Hamiltonicity::Transforms qw(&string_to_graph);
use Graph::Undirected::Hamiltonicity::Wolfram qw(:all);

use Test::More;

$ENV{HC_OUTPUT_FORMAT} = 'none';

my $url = get_url_from_config();

t/spoof/spoof_canonical_hamiltonian_graph.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity::Spoof
    qw(&spoof_canonical_hamiltonian_graph);
use Graph::Undirected::Hamiltonicity::Tests
    qw(&test_canonical $GRAPH_IS_HAMILTONIAN $GRAPH_IS_NOT_HAMILTONIAN);

use Test::More;

plan tests => 30;

t/spoof/spoof_known_hamiltonian_graph.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity;
use Graph::Undirected::Hamiltonicity::Spoof
    qw(&spoof_known_hamiltonian_graph);

use Test::More;
use Test::Exception;

plan tests => 58;

t/spoof/spoof_random_graph.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity::Spoof
    qw(&spoof_random_graph);

use Test::More;

plan tests => 33;

$ENV{HC_OUTPUT_FORMAT} = 'none';

t/spoof/spoof_randomish_graph.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity::Spoof
    qw(&spoof_randomish_graph);

use Test::More;

plan tests => 286;

$ENV{HC_OUTPUT_FORMAT} = 'none';

t/tests/generic_tests.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity::Tests qw(:all);
use Graph::Undirected::Hamiltonicity::Transforms qw(&string_to_graph);

use Test::More;

plan tests => 20;

$ENV{HC_OUTPUT_FORMAT} = 'none';

t/transforms/add_random_edges.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity::Transforms
    qw(&string_to_graph &add_random_edges);

use Test::More;

plan tests => 6;

$ENV{HC_OUTPUT_FORMAT} = 'none';

t/transforms/delete_cycle_closing_edges.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity::Transforms
    qw(
       &get_required_graph
       &delete_cycle_closing_edges
       &string_to_graph
    );

use Test::More;

t/transforms/delete_non_required_neighbors.t  view on Meta::CPAN

#!perl
use Modern::Perl;

use Graph::Undirected::Hamiltonicity::Transforms
    qw(&string_to_graph &delete_non_required_neighbors);

use Test::More;

plan tests => 10;

my $herschel_graph_text =
    '0=1,0=3,0=9,0=10,1=2,1=4,2=5,2=9,3=4,3=6,4=5,4=7,5=8,6=7,6=10,7=8,8=9,8=10';



( run in 0.351 second using v1.01-cache-2.11-cpan-4d50c553e7e )